Create an ingestion source into a table. type says who runs it and is required: the same Sales Navigator link is a valid ai_search and a valid sender_search, so a link’s shape never decides.
ai_search: exactly one of url, payload.prompt or payload.filters; the pool runs it for credits, no sender. sender_search: sender_profile_sid plus url, unless payload.surface is my_network or messenger; payload.repeat reruns it. post_engagement: sender_profile_sid plus a post, profile or company page link (preview_post_engagement reads it back first); payload.window, relevance, collect and repeat tune it; every person lands with what they did. find_people: payload.company_sids and/or company_filter, plus a prompt or filters; always people. webhook: payload.records_path; the answer carries ingest_url (the credential: rotate to revoke). csv is refused: upload it, then import_data_source.
Refusals are 422, the reason in field_errors[field][0].rule: url needs_sender (only a Sales Navigator search runs on the pool: the rest is a sender_search), url post_engagement (a post link in a search kind), link_not_recognized, object_type or payload.target agreement, payload in, payload.collect required, and on sender_profile_sid linkedin_account_missing, sales_nav_required, recruiter_required or recruiter_signed_out. No dedup. When NOT: blocking identifiers (create_stoplist_entry); feeding people into outreach (workflow sources).
Contract:
MCP tool create_data_source, registry package mcp.playtables/data_sources, mount playtables.sources.
Required. ai_search | sender_search | post_engagement | find_people | webhook. csv is accepted by the shape rule and then refused with the way in: upload the file through upload-csv, then confirm it with import_data_source.
LinkedIn link of an ai_search, sender_search or post_engagement: /search/results, /sales/search, /sales/lists, /talent/search?searchHistoryId=, /mynetwork, /messaging; post_engagement: /posts, /feed/update, lnkd.in, /in/{slug}, /company/{slug}.
What the rows become: people | company. Required for a description-mode ai_search. Elsewhere optional and checked for agreement with the link (or with the kind: find_people and webhook always bring people).
The sender profile whose own LinkedIn account collects (ub_sp_); required for sender_search and post_engagement, prohibited elsewhere. Must be live, hold a LinkedIn account and the licence the link needs (Sales Navigator, or an active Recruiter session).
Optional override for type=webhook (absent = attribute auto-detect at promotion); prohibited for the three search kinds, whose collector emits the canonical parser shape. A csv source gets its mapping at import.
type=webhook only: {api_base}/external/ingest/{ingest_key} - the endpoint the customer CRM POSTs records to. The URL IS the credential: hand it to the user over a channel they trust, and rotate it to revoke.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"GetSales","description":"REST API and MCP server of GetSales: tables of people and companies, enrichment columns, data sources, multichannel workflows, the team inbox with the AI SDR, website signals, billing and webhooks.","colors":{"primary":"#4B64FF","light":"#8E92FF","dark":"#4B64FF"},"logo":{"light":"https://mintcdn.com/getsales/um-g-UJLB97yTl7a/logo/light.svg?fit=max\u0026auto=format\u0026n=um-g-UJLB97yTl7a\u0026q=85\u0026s=428985b239f36914fa7e1e44f6211540","dark":"https://mintcdn.com/getsales/um-g-UJLB97yTl7a/logo/dark.svg?fit=max\u0026auto=format\u0026n=um-g-UJLB97yTl7a\u0026q=85\u0026s=5d6ddba134f76dc1a6fc235f12fd2477","href":"https://getsales.io"},"favicon":"https://mintcdn.com/getsales/um-g-UJLB97yTl7a/favicon.svg?fit=max\u0026auto=format\u0026n=um-g-UJLB97yTl7a\u0026q=85\u0026s=6750a85bc743ceebf9a7429797a7d21b","navbar":{"links":[{"href":"https://getsales.io/pricing/","label":"Pricing"},{"href":"https://help.getsales.io/","label":"Help centre"}],"primary":{"type":"button","label":"Start free","href":"https://beta.getsales.io/signup"}},"footer":{"socials":{"github":"https://github.com/getsales-io","website":"https://getsales.io"},"links":[{"header":"Product","items":[{"label":"Home","href":"https://getsales.io"},{"label":"Pricing","href":"https://getsales.io/pricing"},{"label":"Sign in","href":"https://beta.getsales.io/login"}]},{"header":"Resources","items":[{"label":"Blog","href":"https://getsales.io/blog"},{"label":"Help centre","href":"https://help.getsales.io/"}]}]},"seo":{"metatags":{"canonical":"https://docs.getsales.io"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"getsales","hasAudioNarration":false,"actualSubdomain":"getsales","customDomains":["docs.getsales.io"],"gitSource":{"type":"github","owner":"getsales-io","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":"","_id":"6ae6c0b853ca202614c15e7c"},"chroma":{"latestBuiltDeploymentHistoryId":"6ae6c9000339475b5aab52ec","collectionId":"850288c1-9e96-4253-bd95-144e66a0e4fa","liveDeploymentHistoryId":"6ae6c9000339475b5aab52ec","schemaVersion":"v3"},"entitlements":{},"buildId":"6ae6cd2bc01b8679a4aef318","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"API Reference","count":412},{"language":"default","tag":"Playtables API","count":142},{"language":"default","tag":"Unibox API","count":125},{"language":"default","tag":"ID and Teams API","count":88},{"language":"default","tag":"sender_profiles","count":33},{"language":"default","tag":"Signals API","count":30},{"language":"default","tag":"Integrations API","count":26},{"language":"default","tag":"agents","count":14},{"language":"default","tag":"data_sources","count":13},{"language":"default","tag":"playtable_fields","count":13}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","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":"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":"llms-txt-v2","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":"byok-sep-25","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":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","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":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/playtables/data_sources/create-data-source","slug":"/api-reference/playtables/data_sources/create-data-source","pageMetadata":{"title":"Create data source","description":"Create an ingestion source into a table. `type` says who runs it and is required: the same Sales Navigator link is a valid ai_search and a valid sender_search, so a link's shape never decides.\n\nai_search: exactly one of url, payload.prompt or payload.filters; the pool runs it for credits, no sender. sender_search: sender_profile_sid plus url, unless payload.surface is my_network or messenger; payload.repeat reruns it. post_engagement: sender_profile_sid plus a post, profile or company page link (preview_post_engagement reads it back first); payload.window, relevance, collect and repeat tune it; every person lands with what they did. find_people: payload.company_sids and/or company_filter, plus a prompt or filters; always people. webhook: payload.records_path; the answer carries ingest_url (the credential: rotate to revoke). csv is refused: upload it, then import_data_source.\n\nRefusals are 422, the reason in field_errors[field][0].rule: url needs_sender (only a Sales Navigator search runs on the pool: the rest is a sender_search), url post_engagement (a post link in a search kind), link_not_recognized, object_type or payload.target agreement, payload in, payload.collect required, and on sender_profile_sid linkedin_account_missing, sales_nav_required, recruiter_required or recruiter_signed_out. No dedup. When NOT: blocking identifiers (create_stoplist_entry); feeding people into outreach (workflow sources).\n\nContract:\n- MCP tool `create_data_source`, registry package `mcp.playtables/data_sources`, mount `playtables.sources`.\n- Operation `create`, response envelope `create`.\n- Flags: none.","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/data-sources","href":"/api-reference/playtables/data_sources/create-data-source","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n li: \"li\",\n p: \"p\",\n ul: \"ul\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [\"Create an ingestion source into a table. \", _jsx(_components.code, {\n children: \"type\"\n }), \" says who runs it and is required: the same Sales Navigator link is a valid ai_search and a valid sender_search, so a link’s shape never decides.\"]\n }), \"\\n\", _jsx(_components.p, {\n children: \"ai_search: exactly one of url, payload.prompt or payload.filters; the pool runs it for credits, no sender. sender_search: sender_profile_sid plus url, unless payload.surface is my_network or messenger; payload.repeat reruns it. post_engagement: sender_profile_sid plus a post, profile or company page link (preview_post_engagement reads it back first); payload.window, relevance, collect and repeat tune it; every person lands with what they did. find_people: payload.company_sids and/or company_filter, plus a prompt or filters; always people. webhook: payload.records_path; the answer carries ingest_url (the credential: rotate to revoke). csv is refused: upload it, then import_data_source.\"\n }), \"\\n\", _jsx(_components.p, {\n children: \"Refusals are 422, the reason in field_errors[field][0].rule: url needs_sender (only a Sales Navigator search runs on the pool: the rest is a sender_search), url post_engagement (a post link in a search kind), link_not_recognized, object_type or payload.target agreement, payload in, payload.collect required, and on sender_profile_sid linkedin_account_missing, sales_nav_required, recruiter_required or recruiter_signed_out. No dedup. When NOT: blocking identifiers (create_stoplist_entry); feeding people into outreach (workflow sources).\"\n }), \"\\n\", _jsx(_components.p, {\n children: \"Contract:\"\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsxs(_components.li, {\n children: [\"MCP tool \", _jsx(_components.code, {\n children: \"create_data_source\"\n }), \", registry package \", _jsx(_components.code, {\n children: \"mcp.playtables/data_sources\"\n }), \", mount \", _jsx(_components.code, {\n children: \"playtables.sources\"\n }), \".\"]\n }), \"\\n\", _jsxs(_components.li, {\n children: [\"Operation \", _jsx(_components.code, {\n children: \"create\"\n }), \", response envelope \", _jsx(_components.code, {\n children: \"create\"\n }), \".\"]\n }), \"\\n\", _jsx(_components.li, {\n children: \"Flags: none.\"\n }), \"\\n\"]\n })]\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":{"title":"Create data source","description":"Create an ingestion source into a table. `type` says who runs it and is required: the same Sales Navigator link is a valid ai_search and a valid sender_search, so a link's shape never decides.\n\nai_search: exactly one of url, payload.prompt or payload.filters; the pool runs it for credits, no sender. sender_search: sender_profile_sid plus url, unless payload.surface is my_network or messenger; payload.repeat reruns it. post_engagement: sender_profile_sid plus a post, profile or company page link (preview_post_engagement reads it back first); payload.window, relevance, collect and repeat tune it; every person lands with what they did. find_people: payload.company_sids and/or company_filter, plus a prompt or filters; always people. webhook: payload.records_path; the answer carries ingest_url (the credential: rotate to revoke). csv is refused: upload it, then import_data_source.\n\nRefusals are 422, the reason in field_errors[field][0].rule: url needs_sender (only a Sales Navigator search runs on the pool: the rest is a sender_search), url post_engagement (a post link in a search kind), link_not_recognized, object_type or payload.target agreement, payload in, payload.collect required, and on sender_profile_sid linkedin_account_missing, sales_nav_required, recruiter_required or recruiter_signed_out. No dedup. When NOT: blocking identifiers (create_stoplist_entry); feeding people into outreach (workflow sources).\n\nContract:\n- MCP tool `create_data_source`, registry package `mcp.playtables/data_sources`, mount `playtables.sources`.\n- Operation `create`, response envelope `create`.\n- Flags: none.","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/data-sources","href":"/api-reference/playtables/data_sources/create-data-source","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"create_data_source","summary":"Create data source","description":"Create an ingestion source into a table. `type` says who runs it and is required: the same Sales Navigator link is a valid ai_search and a valid sender_search, so a link's shape never decides.\n\nai_search: exactly one of url, payload.prompt or payload.filters; the pool runs it for credits, no sender. sender_search: sender_profile_sid plus url, unless payload.surface is my_network or messenger; payload.repeat reruns it. post_engagement: sender_profile_sid plus a post, profile or company page link (preview_post_engagement reads it back first); payload.window, relevance, collect and repeat tune it; every person lands with what they did. find_people: payload.company_sids and/or company_filter, plus a prompt or filters; always people. webhook: payload.records_path; the answer carries ingest_url (the credential: rotate to revoke). csv is refused: upload it, then import_data_source.\n\nRefusals are 422, the reason in field_errors[field][0].rule: url needs_sender (only a Sales Navigator search runs on the pool: the rest is a sender_search), url post_engagement (a post link in a search kind), link_not_recognized, object_type or payload.target agreement, payload in, payload.collect required, and on sender_profile_sid linkedin_account_missing, sales_nav_required, recruiter_required or recruiter_signed_out. No dedup. When NOT: blocking identifiers (create_stoplist_entry); feeding people into outreach (workflow sources).\n\nContract:\n- MCP tool `create_data_source`, registry package `mcp.playtables/data_sources`, mount `playtables.sources`.\n- Operation `create`, response envelope `create`.\n- Flags: none.","tags":["data_sources"],"requestBody":"95b40470-a84f-40ca-9d3e-bc78e5f68fa4","responses":{"200":"74b3a4ac-b39f-4401-83ee-71915a860001","4XX":"7025c950-51d8-4d3c-a72e-d212cc0fca00","5XX":"3816e57b-cadc-4a99-8a86-3564bb01fef7"},"x-gs-mcp-tool":"create_data_source","x-gs-mcp-mount":"playtables.sources","x-gs-entity":"data_sources","x-gs-operation":"create","x-gs-envelope":"create","x-gs-availability":"ga","x-gs-dangerous":false,"x-gs-mass-action":false,"x-gs-step-eligible":false,"x-gs-schedule-required":false,"x-gs-tool-class":"complex","method":"post","type":"path","servers":["71624634-b298-4b81-ba22-a05986db64c0"],"security":["d3ab5cdd-2aa1-426f-93da-16562fad923f"],"path":"/api/data-sources","baseUrlOptions":["https://beta.getsales.io/playtables/v1"],"title":"Create data source","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","description":"Request body of `create_data_source`.","properties":{"playtable_sid":{"type":"string","minLength":18,"maxLength":18,"pattern":"^pt_tb_","description":"Target table (pt_tb_…) receiving promoted objects. Required for every kind.","isRequired":true,"uniqueKey":"playtable_sid","typeLabel":"string"},"type":{"type":"string","enum":["ai_search","sender_search","post_engagement","find_people","csv","webhook"],"description":"Required. ai_search | sender_search | post_engagement | find_people | webhook. `csv` is accepted by the shape rule and then refused with the way in: upload the file through upload-csv, then confirm it with import_data_source.","isRequired":true,"uniqueKey":"type","typeLabel":"enum\u003cstring>"},"url":{"type":"string","maxLength":2048,"format":"uri","description":"LinkedIn link of an ai_search, sender_search or post_engagement: /search/results, /sales/search, /sales/lists, /talent/search?searchHistoryId=, /mynetwork, /messaging; post_engagement: /posts, /feed/update, lnkd.in, /in/{slug}, /company/{slug}.","uniqueKey":"url","typeLabel":"string\u003curi>"},"object_type":{"type":"string","enum":["people","company"],"description":"What the rows become: people | company. Required for a description-mode ai_search. Elsewhere optional and checked for agreement with the link (or with the kind: find_people and webhook always bring people).","uniqueKey":"object_type","typeLabel":"enum\u003cstring>"},"name":{"type":"string","minLength":1,"maxLength":255,"description":"Defaults from the kind and its link (\"Sales Navigator saved search\", \"My network\", \"AI search: \u003cthe description>\").","uniqueKey":"name","typeLabel":"string"},"sender_profile_sid":{"type":"string","minLength":18,"maxLength":18,"pattern":"^ub_sp_","description":"The sender profile whose own LinkedIn account collects (ub_sp_); required for sender_search and post_engagement, prohibited elsewhere. Must be live, hold a LinkedIn account and the licence the link needs (Sales Navigator, or an active Recruiter session).","uniqueKey":"sender_profile_sid","typeLabel":"string"},"payload":{"type":"object","properties":{"prompt":{"type":"string","maxLength":2000,"description":"ai_search, find_people. Who to find, in words. ai_search: a prompt that is only an http(s) link is read as the link. find_people: empty = everyone at each company. Planned into the search filter at the first collect; no filter from it = plan_failed.","uniqueKey":"payload.prompt","typeLabel":"string"},"filters":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"payload.filters.additionalProperties","typeLabel":"any"},"description":"ai_search, find_people. The by-params filter set plan_data_source_filters returns: it IS the plan, so planning is skipped (prompt may ride as the description). For find_people current companies are injected per anchor, never here.","uniqueKey":"payload.filters","typeLabel":"object"},"surface":{"type":"string","enum":["search","saved_search","list","post","my_network","messenger"],"description":"sender_search only. my_network (the profile's 1st-degree connections) or messenger (its conversation partners) is how a sender search runs WITHOUT a url. Sent with a url it must agree with what the link is (422 on payload.surface, rule agreement).","uniqueKey":"payload.surface","typeLabel":"enum\u003cstring>"},"repeat":{"oneOf":[{"type":"string","enum":["hourly","daily","weekly","monthly"],"description":"sender_search, post_engagement. hourly | daily | weekly | monthly = run again at that interval, bringing what is new (a post engagement: new people on the post, or new posts in the window); null or absent = once. Pool kinds never repeat.","uniqueKey":"payload.repeat.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["hourly","daily","weekly","monthly"],"description":"sender_search, post_engagement. hourly | daily | weekly | monthly = run again at that interval, bringing what is new (a post engagement: new people on the post, or new posts in the window); null or absent = once. Pool kinds never repeat.","uniqueKey":"payload.repeat.oneOf.1","typeLabel":"null"}],"uniqueKey":"payload.repeat","typeLabel":"enum\u003cstring> | null"},"target":{"type":"string","enum":["post","person","company"],"description":"post_engagement only. What the link must be: post | person | company; refused when the link is something else (422 on payload.target, rule agreement). Absent = read off the link.","uniqueKey":"payload.target","typeLabel":"enum\u003cstring>"},"window":{"oneOf":[{"type":"object","description":"post_engagement, a person or a company only: {days: 7 | 30 | 90} back from each run (default 30), or {since: \"YYYY-MM-DD\"} within the past year. On one post it is 422 rule prohibited.","required":["days"],"properties":{"days":{"oneOf":[{"type":"number","enum":[7],"isRequired":true,"uniqueKey":"payload.window.oneOf.0.days.oneOf.0","typeLabel":"enum\u003cnumber>"},{"type":"number","enum":[30],"isRequired":true,"uniqueKey":"payload.window.oneOf.0.days.oneOf.1","typeLabel":"enum\u003cnumber>"},{"type":"number","enum":[90],"isRequired":true,"uniqueKey":"payload.window.oneOf.0.days.oneOf.2","typeLabel":"enum\u003cnumber>"}],"isRequired":true,"uniqueKey":"payload.window.oneOf.0.days","typeLabel":"enum\u003cnumber>"}},"additionalProperties":false,"uniqueKey":"payload.window.oneOf.0","typeLabel":"object"},{"type":"object","description":"post_engagement, a person or a company only: {days: 7 | 30 | 90} back from each run (default 30), or {since: \"YYYY-MM-DD\"} within the past year. On one post it is 422 rule prohibited.","required":["since"],"properties":{"since":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$","isRequired":true,"uniqueKey":"payload.window.oneOf.1.since","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"payload.window.oneOf.1","typeLabel":"object"}],"uniqueKey":"payload.window","typeLabel":"object"},"relevance":{"oneOf":[{"type":"object","properties":{"prompt":{"type":"string","minLength":1,"maxLength":2000,"isRequired":true,"uniqueKey":"payload.relevance.oneOf.0.prompt","typeLabel":"string"}},"required":["prompt"],"additionalProperties":false,"description":"post_engagement only. The AI post filter: which posts count, in the user's words (\"posts about outbound; skip job ads\"). One llm.generate per 20 posts, billed as the source's check; a post it could not judge passes. null or absent = every post is walked.","uniqueKey":"payload.relevance.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"prompt":{"type":"string","minLength":1,"maxLength":2000}},"required":["prompt"],"additionalProperties":false,"description":"post_engagement only. The AI post filter: which posts count, in the user's words (\"posts about outbound; skip job ads\"). One llm.generate per 20 posts, billed as the source's check; a post it could not judge passes. null or absent = every post is walked.","uniqueKey":"payload.relevance.oneOf.1","typeLabel":"null"}],"uniqueKey":"payload.relevance","typeLabel":"object | null"},"collect":{"type":"object","properties":{"reactions":{"type":"boolean","uniqueKey":"payload.collect.reactions","typeLabel":"boolean"},"comments":{"type":"boolean","uniqueKey":"payload.collect.comments","typeLabel":"boolean"},"reposts":{"type":"boolean","uniqueKey":"payload.collect.reposts","typeLabel":"boolean"}},"additionalProperties":false,"description":"post_engagement only. {reactions, comments, reposts}, each true or false; absent switches default to reactions and comments on, reposts off; all three off is 422 rule required.","uniqueKey":"payload.collect","typeLabel":"object"},"company_sids":{"type":"array","items":{"type":"string","minLength":18,"maxLength":18,"pattern":"^cr_co_","uniqueKey":"payload.company_sids.items.[INDEX]","typeLabel":"string"},"minItems":1,"maxItems":500,"description":"find_people only; required there unless company_filter is given. The companies to find people at (cr_co_, from the companies grid), at most 500 per source: over the cap is 422 rule max. Grow the queue with add_companies_to_data_source.","uniqueKey":"payload.company_sids","typeLabel":"string[]"},"company_filter":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"payload.company_filter.additionalProperties","typeLabel":"any"},"description":"find_people only. An account filter instead of (or with) company_sids: the search_companies filter object as is, resolved to sids at the call (a disqualified account is left out). No match and no sids is 422 rule required; past 500 matches 422 rule max.","uniqueKey":"payload.company_filter","typeLabel":"object"},"per_company_limit":{"type":"integer","minimum":1,"maximum":25,"description":"find_people only. People taken per company (1..25); absent = the whole first search page (25).","uniqueKey":"payload.per_company_limit","typeLabel":"integer"},"records_path":{"type":"string","description":"webhook only. Where the array of records sits in an inbound body (\"data.contacts\"); absent = the body is the record or the array itself.","uniqueKey":"payload.records_path","typeLabel":"string"}},"description":"The kind's own keys: ai_search {prompt | filters}, sender_search {surface, repeat}, post_engagement {target, window, relevance, collect, repeat}, find_people {company_sids, company_filter, per_company_limit, prompt, filters}, webhook {records_path}.","uniqueKey":"payload","typeLabel":"object"},"field_mapping":{"type":"array","items":{"type":"object","properties":{"source":{"type":"string","minLength":1,"maxLength":512,"description":"CSV column index as a string (\"3\") or JSON path into the webhook body (\"contact.email\").","isRequired":true,"uniqueKey":"field_mapping.items.[INDEX].source","typeLabel":"string"},"target_kind":{"type":"string","enum":["people_attribute","company_attribute","field_slug"],"description":"people_attribute | company_attribute | field_slug.","isRequired":true,"uniqueKey":"field_mapping.items.[INDEX].target_kind","typeLabel":"enum\u003cstring>"},"target":{"type":"string","minLength":1,"maxLength":255,"description":"Attribute key (people / company) or a playtable field slug in the target table.","isRequired":true,"uniqueKey":"field_mapping.items.[INDEX].target","typeLabel":"string"},"name":{"oneOf":[{"type":"string","minLength":1,"maxLength":255,"description":"Display name for the column a field_slug target creates (the header renamed in the mapping UI); null = the CSV header names it. Ignored for the attribute kinds and for fields that already exist.","uniqueKey":"field_mapping.items.[INDEX].name.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"maxLength":255,"description":"Display name for the column a field_slug target creates (the header renamed in the mapping UI); null = the CSV header names it. Ignored for the attribute kinds and for fields that already exist.","uniqueKey":"field_mapping.items.[INDEX].name.oneOf.1","typeLabel":"null"}],"uniqueKey":"field_mapping.items.[INDEX].name","typeLabel":"string | null"}},"required":["source","target_kind","target"],"uniqueKey":"field_mapping.items.[INDEX]","typeLabel":"object"},"description":"Optional override for type=webhook (absent = attribute auto-detect at promotion); prohibited for the three search kinds, whose collector emits the canonical parser shape. A csv source gets its mapping at import.","uniqueKey":"field_mapping","typeLabel":"object[]"},"tag_sids":{"type":"array","items":{"type":"string","minLength":18,"maxLength":18,"pattern":"^cr_tg_","uniqueKey":"tag_sids.items.[INDEX]","typeLabel":"string"},"description":"Each tag must exist (cr_tg_…); applied to every promoted object.","uniqueKey":"tag_sids","typeLabel":"string[]"},"on_duplicate":{"type":"string","enum":["skip","move"],"description":"Default 'skip'.","uniqueKey":"on_duplicate","typeLabel":"enum\u003cstring>"},"add_tags_to_duplicate":{"type":"boolean","description":"Default false - merge tag_sids onto matched duplicates.","uniqueKey":"add_tags_to_duplicate","typeLabel":"boolean"},"qualify":{"oneOf":[{"type":"object","properties":{"on":{"type":"boolean","description":"The switch. `on` with no criterion is refused (422 on qualify.criterion, rule required_if).","isRequired":true,"uniqueKey":"qualify.oneOf.0.on","typeLabel":"boolean"},"criterion":{"oneOf":[{"type":"string","minLength":1,"maxLength":2000,"description":"Who passes, in the user's words (\"a decision maker at a marketing agency, not a freelancer\"). Trimmed; null while the check is off.","isRequired":true,"uniqueKey":"qualify.oneOf.0.criterion.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"maxLength":2000,"description":"Who passes, in the user's words (\"a decision maker at a marketing agency, not a freelancer\"). Trimmed; null while the check is off.","isRequired":true,"uniqueKey":"qualify.oneOf.0.criterion.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"qualify.oneOf.0.criterion","typeLabel":"string | null"}},"required":["on","criterion"],"additionalProperties":false,"description":"The source gate, \"Check on save\": {on, criterion}. A closed object (an unknown key is 422 rule invalid_qualify); on with no words is refused.","uniqueKey":"qualify.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"on":{"type":"boolean","description":"The switch. `on` with no criterion is refused (422 on qualify.criterion, rule required_if)."},"criterion":{"oneOf":[{"type":"string","minLength":1,"maxLength":2000,"description":"Who passes, in the user's words (\"a decision maker at a marketing agency, not a freelancer\"). Trimmed; null while the check is off."},{"type":"null","minLength":1,"maxLength":2000,"description":"Who passes, in the user's words (\"a decision maker at a marketing agency, not a freelancer\"). Trimmed; null while the check is off."}]}},"required":["on","criterion"],"additionalProperties":false,"description":"The source gate, \"Check on save\": {on, criterion}. A closed object (an unknown key is 422 rule invalid_qualify); on with no words is refused.","uniqueKey":"qualify.oneOf.1","typeLabel":"null"}],"uniqueKey":"qualify","typeLabel":"object | null"}},"required":["playtable_sid","type"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"playtable_sid":"\u003cstring>","url":"\u003cstring>","name":"\u003cstring>","sender_profile_sid":"\u003cstring>","payload":{"prompt":"\u003cstring>","filters":{},"window":{"days":7},"relevance":{"prompt":"\u003cstring>"},"collect":{"reactions":true,"comments":true,"reposts":true},"company_sids":["\u003cstring>"],"company_filter":{},"per_company_limit":13,"records_path":"\u003cstring>"},"field_mapping":[{"source":"\u003cstring>","target":"\u003cstring>","name":"\u003cstring>"}],"tag_sids":["\u003cstring>"],"add_tags_to_duplicate":true,"qualify":{"on":true,"criterion":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"74b3a4ac-b39f-4401-83ee-71915a860001":{"description":"`create` success envelope.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","enum":[true],"isRequired":true,"uniqueKey":"success","typeLabel":"enum\u003cboolean>"},"operation":{"type":"string","enum":["create"],"isRequired":true,"uniqueKey":"operation","typeLabel":"enum\u003cstring>"},"item":{"type":"object","properties":{"sid":{"type":"string","isRequired":true,"uniqueKey":"item.sid","typeLabel":"string"},"team_sid":{"type":"string","isRequired":true,"uniqueKey":"item.team_sid","typeLabel":"string"},"playtable_sid":{"oneOf":[{"type":"string","description":"pt_tb_… target table, required on every create; becomes null only when the target playtable is deleted (the source auto-pauses, status_reason=playtable_deleted).","isRequired":true,"uniqueKey":"item.playtable_sid.oneOf.0","typeLabel":"string"},{"type":"null","description":"pt_tb_… target table, required on every create; becomes null only when the target playtable is deleted (the source auto-pauses, status_reason=playtable_deleted).","isRequired":true,"uniqueKey":"item.playtable_sid.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"item.playtable_sid","typeLabel":"string | null"},"name":{"type":"string","description":"min 1, max 255. Defaulted from the kind and its link when omitted on create (\"Sales Navigator saved search\", \"My conversations\", \"AI search: CMOs in DACH\").","isRequired":true,"uniqueKey":"item.name","typeLabel":"string"},"type":{"type":"string","enum":["ai_search","sender_search","post_engagement","find_people","csv","webhook"],"description":"[ro] The source kind: ai_search | sender_search | post_engagement | find_people | csv | webhook. Immutable after create.","isRequired":true,"uniqueKey":"item.type","typeLabel":"enum\u003cstring>"},"object_type":{"type":"string","enum":["people","company"],"description":"What promoted items become: people | company. An input of create, not a derivation of type; [ro] once the source is past draft (a csv draft's import step may still change it).","isRequired":true,"uniqueKey":"item.object_type","typeLabel":"enum\u003cstring>"},"sender_profile_sid":{"oneOf":[{"type":"string","description":"ub_sp_… the sender profile whose own LinkedIn account collects. Required for type=sender_search and post_engagement, null for every other kind - see ./sender_profiles.md.","isRequired":true,"uniqueKey":"item.sender_profile_sid.oneOf.0","typeLabel":"string"},{"type":"null","description":"ub_sp_… the sender profile whose own LinkedIn account collects. Required for type=sender_search and post_engagement, null for every other kind - see ./sender_profiles.md.","isRequired":true,"uniqueKey":"item.sender_profile_sid.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"item.sender_profile_sid","typeLabel":"string | null"},"ingest_key":{"oneOf":[{"type":"string","description":"type=webhook only: the 40-char capability secret in the ingest URL ({api_base}/external/ingest/{ingest_key}). Stored plaintext by design so the URL stays re-viewable; rotate-ingest-key revokes it. null for every other kind.","isRequired":true,"uniqueKey":"item.ingest_key.oneOf.0","typeLabel":"string"},{"type":"null","description":"type=webhook only: the 40-char capability secret in the ingest URL ({api_base}/external/ingest/{ingest_key}). Stored plaintext by design so the URL stays re-viewable; rotate-ingest-key revokes it. null for every other kind.","isRequired":true,"uniqueKey":"item.ingest_key.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"item.ingest_key","typeLabel":"string | null"},"payload":{"oneOf":[{"type":"object","description":"Kind-discriminated config JSON, validated per kind server-side. ai_search: prompt | url + platform + surface, filters + engine (the stored plan), plan_chips / plan_warnings, next_page / latest_page (the walk cursor), collect_error (what stopped the walk: kind transient | refused, http, code, reason, message, fields; with status_reason collect_failed | collect_interrupted). sender_search: url + platform + surface, repeat, and the collector's own cursor (next_page / latest_page for the Recruiter walker, poll_since / poll_cursor / poll_max for the network and inbox pollers; the bus-served surfaces keep none). find_people: company_sids, next_index, per_company_limit, prompt, filters + engine. csv: file_path, file_type, mode, total_rows, config, match. webhook: records_path. post_engagement (2026-10-28): target + post {urn} | person {ln_nickname; ln_id, ln_member_id, name once resolved} | company {ln_nickname, ln_id, name, logo_url}, window, relevance, collect, repeat, and the walk's own state: stage (posts | judge | engage | done), posts (what it read, with verdicts and feed cursors), cycle, next_page / latest_page, migrated_from on a row born as a search with a post link before the kind existed.","properties":{"platform":{"type":"string","enum":["linkedin","sales_navigator","recruiter"],"description":"ai_search (link mode) and sender_search: which LinkedIn product the link opens in.","uniqueKey":"item.payload.oneOf.0.platform","typeLabel":"enum\u003cstring>"},"surface":{"type":"string","enum":["search","saved_search","list","post","my_network","messenger"],"description":"ai_search (link mode) and sender_search: what kind of list the link is.","uniqueKey":"item.payload.oneOf.0.surface","typeLabel":"enum\u003cstring>"},"repeat":{"oneOf":[{"type":"string","enum":["hourly","daily","weekly","monthly"],"description":"sender_search, post_engagement: the rerun interval; absent or null = runs once.","uniqueKey":"item.payload.oneOf.0.repeat.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["hourly","daily","weekly","monthly"],"description":"sender_search, post_engagement: the rerun interval; absent or null = runs once.","uniqueKey":"item.payload.oneOf.0.repeat.oneOf.1","typeLabel":"null"}],"uniqueKey":"item.payload.oneOf.0.repeat","typeLabel":"enum\u003cstring> | null"},"mode":{"type":"string","enum":["create","update"],"description":"csv: what the import does with its rows.","uniqueKey":"item.payload.oneOf.0.mode","typeLabel":"enum\u003cstring>"},"target":{"type":"string","enum":["post","person","company"],"description":"post_engagement: what the source watches; the axis beside it names it (post.urn, person.ln_nickname, or company.ln_nickname with ln_id, name and logo_url once the walk resolved the page). A link is never stored: rebuild it from the axis.","uniqueKey":"item.payload.oneOf.0.target","typeLabel":"enum\u003cstring>"},"window":{"oneOf":[{"type":"object","description":"post_engagement, a person or a company: the window the posts are read from.","required":["days"],"properties":{"days":{"oneOf":[{"type":"number","enum":[7],"isRequired":true,"uniqueKey":"item.payload.oneOf.0.window.oneOf.0.days.oneOf.0","typeLabel":"enum\u003cnumber>"},{"type":"number","enum":[30],"isRequired":true,"uniqueKey":"item.payload.oneOf.0.window.oneOf.0.days.oneOf.1","typeLabel":"enum\u003cnumber>"},{"type":"number","enum":[90],"isRequired":true,"uniqueKey":"item.payload.oneOf.0.window.oneOf.0.days.oneOf.2","typeLabel":"enum\u003cnumber>"}],"isRequired":true,"uniqueKey":"item.payload.oneOf.0.window.oneOf.0.days","typeLabel":"enum\u003cnumber>"}},"additionalProperties":false,"uniqueKey":"item.payload.oneOf.0.window.oneOf.0","typeLabel":"object"},{"type":"object","description":"post_engagement, a person or a company: the window the posts are read from.","required":["since"],"properties":{"since":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$","isRequired":true,"uniqueKey":"item.payload.oneOf.0.window.oneOf.1.since","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"item.payload.oneOf.0.window.oneOf.1","typeLabel":"object"}],"uniqueKey":"item.payload.oneOf.0.window","typeLabel":"object"},"relevance":{"type":"object","properties":{"prompt":{"type":"string","isRequired":true,"uniqueKey":"item.payload.oneOf.0.relevance.prompt","typeLabel":"string"}},"required":["prompt"],"description":"post_engagement: the AI post filter; absent = every post is walked.","uniqueKey":"item.payload.oneOf.0.relevance","typeLabel":"object"},"collect":{"type":"object","properties":{"reactions":{"type":"boolean","uniqueKey":"item.payload.oneOf.0.collect.reactions","typeLabel":"boolean"},"comments":{"type":"boolean","uniqueKey":"item.payload.oneOf.0.collect.comments","typeLabel":"boolean"},"reposts":{"type":"boolean","uniqueKey":"item.payload.oneOf.0.collect.reposts","typeLabel":"boolean"}},"additionalProperties":false,"description":"post_engagement: the feeds the walk collects.","uniqueKey":"item.payload.oneOf.0.collect","typeLabel":"object"},"posts":{"type":"array","items":{"type":"object","properties":{"urn":{"type":"string","isRequired":true,"uniqueKey":"item.payload.oneOf.0.posts.items.[INDEX].urn","typeLabel":"string"},"title":{"type":"string","uniqueKey":"item.payload.oneOf.0.posts.items.[INDEX].title","typeLabel":"string"},"published_at":{"oneOf":[{"type":"string","uniqueKey":"item.payload.oneOf.0.posts.items.[INDEX].published_at.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"item.payload.oneOf.0.posts.items.[INDEX].published_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"item.payload.oneOf.0.posts.items.[INDEX].published_at","typeLabel":"string | null"},"verdict":{"type":"string","enum":["match","skip"],"uniqueKey":"item.payload.oneOf.0.posts.items.[INDEX].verdict","typeLabel":"enum\u003cstring>"},"verdict_reason":{"type":"string","uniqueKey":"item.payload.oneOf.0.posts.items.[INDEX].verdict_reason","typeLabel":"string"}},"required":["urn"],"uniqueKey":"item.payload.oneOf.0.posts.items.[INDEX]","typeLabel":"object"},"description":"post_engagement: the posts the walk read, newest first, each with its title (the first line), text, author, published_at, counts, the filter's verdict with the reason of a skip, and the walk's cursor per feed (feeds.reactors | comments | resharers: {cursor} or {done: true}).","uniqueKey":"item.payload.oneOf.0.posts","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"item.payload.oneOf.0","typeLabel":"object"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"item.payload.oneOf.1.items.[INDEX]","typeLabel":"any"},"description":"Kind-discriminated config JSON, validated per kind server-side. ai_search: prompt | url + platform + surface, filters + engine (the stored plan), plan_chips / plan_warnings, next_page / latest_page (the walk cursor), collect_error (what stopped the walk: kind transient | refused, http, code, reason, message, fields; with status_reason collect_failed | collect_interrupted). sender_search: url + platform + surface, repeat, and the collector's own cursor (next_page / latest_page for the Recruiter walker, poll_since / poll_cursor / poll_max for the network and inbox pollers; the bus-served surfaces keep none). find_people: company_sids, next_index, per_company_limit, prompt, filters + engine. csv: file_path, file_type, mode, total_rows, config, match. webhook: records_path. post_engagement (2026-10-28): target + post {urn} | person {ln_nickname; ln_id, ln_member_id, name once resolved} | company {ln_nickname, ln_id, name, logo_url}, window, relevance, collect, repeat, and the walk's own state: stage (posts | judge | engage | done), posts (what it read, with verdicts and feed cursors), cycle, next_page / latest_page, migrated_from on a row born as a search with a post link before the kind existed.","isRequired":true,"uniqueKey":"item.payload.oneOf.1","typeLabel":"any[]"}],"isRequired":true,"uniqueKey":"item.payload","typeLabel":"object | any[]"},"field_mapping":{"oneOf":[{"type":"array","items":{"type":"object","properties":{"source":{"type":"string","minLength":1,"maxLength":512,"description":"CSV column index as a string (\"3\") or JSON path into the webhook body (\"contact.email\").","isRequired":true,"uniqueKey":"item.field_mapping.oneOf.0.items.[INDEX].source","typeLabel":"string"},"target_kind":{"type":"string","enum":["people_attribute","company_attribute","field_slug"],"description":"people_attribute | company_attribute | field_slug.","isRequired":true,"uniqueKey":"item.field_mapping.oneOf.0.items.[INDEX].target_kind","typeLabel":"enum\u003cstring>"},"target":{"type":"string","minLength":1,"maxLength":255,"description":"Attribute key (people / company) or a playtable field slug in the target table.","isRequired":true,"uniqueKey":"item.field_mapping.oneOf.0.items.[INDEX].target","typeLabel":"string"},"name":{"oneOf":[{"type":"string","minLength":1,"maxLength":255,"description":"Display name for the column a field_slug target creates (the header renamed in the mapping UI); null = the CSV header names it. Ignored for the attribute kinds and for fields that already exist.","uniqueKey":"item.field_mapping.oneOf.0.items.[INDEX].name.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"maxLength":255,"description":"Display name for the column a field_slug target creates (the header renamed in the mapping UI); null = the CSV header names it. Ignored for the attribute kinds and for fields that already exist.","uniqueKey":"item.field_mapping.oneOf.0.items.[INDEX].name.oneOf.1","typeLabel":"null"}],"uniqueKey":"item.field_mapping.oneOf.0.items.[INDEX].name","typeLabel":"string | null"}},"required":["source","target_kind","target"],"uniqueKey":"item.field_mapping.oneOf.0.items.[INDEX]","typeLabel":"object"},"description":"source→target entries: set at import for csv (and may be []), an optional override for webhook (absent = attribute auto-detect at promotion), forbidden for the three search kinds (their collector emits the canonical parser shape).","isRequired":true,"uniqueKey":"item.field_mapping.oneOf.0","typeLabel":"object[]"},{"type":"null","items":{"type":"object","properties":{"source":{"type":"string","minLength":1,"maxLength":512,"description":"CSV column index as a string (\"3\") or JSON path into the webhook body (\"contact.email\")."},"target_kind":{"type":"string","enum":["people_attribute","company_attribute","field_slug"],"description":"people_attribute | company_attribute | field_slug."},"target":{"type":"string","minLength":1,"maxLength":255,"description":"Attribute key (people / company) or a playtable field slug in the target table."},"name":{"oneOf":[{"type":"string","minLength":1,"maxLength":255,"description":"Display name for the column a field_slug target creates (the header renamed in the mapping UI); null = the CSV header names it. Ignored for the attribute kinds and for fields that already exist."},{"type":"null","minLength":1,"maxLength":255,"description":"Display name for the column a field_slug target creates (the header renamed in the mapping UI); null = the CSV header names it. Ignored for the attribute kinds and for fields that already exist."}]}},"required":["source","target_kind","target"]},"description":"source→target entries: set at import for csv (and may be []), an optional override for webhook (absent = attribute auto-detect at promotion), forbidden for the three search kinds (their collector emits the canonical parser shape).","isRequired":true,"uniqueKey":"item.field_mapping.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"item.field_mapping","typeLabel":"object[] | null"},"tag_sids":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"item.tag_sids.oneOf.0.items.[INDEX]","typeLabel":"string"},"description":"cr_tg_… each - tags applied to every promoted object - see ./tags.md.","isRequired":true,"uniqueKey":"item.tag_sids.oneOf.0","typeLabel":"string[]"},{"type":"null","items":{"type":"string"},"description":"cr_tg_… each - tags applied to every promoted object - see ./tags.md.","isRequired":true,"uniqueKey":"item.tag_sids.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"item.tag_sids","typeLabel":"string[] | null"},"qualify":{"oneOf":[{"type":"object","properties":{"on":{"type":"boolean","description":"The switch. `on` with no criterion is refused (422 on qualify.criterion, rule required_if).","isRequired":true,"uniqueKey":"item.qualify.oneOf.0.on","typeLabel":"boolean"},"criterion":{"oneOf":[{"type":"string","minLength":1,"maxLength":2000,"description":"Who passes, in the user's words (\"a decision maker at a marketing agency, not a freelancer\"). Trimmed; null while the check is off.","isRequired":true,"uniqueKey":"item.qualify.oneOf.0.criterion.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"maxLength":2000,"description":"Who passes, in the user's words (\"a decision maker at a marketing agency, not a freelancer\"). Trimmed; null while the check is off.","isRequired":true,"uniqueKey":"item.qualify.oneOf.0.criterion.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"item.qualify.oneOf.0.criterion","typeLabel":"string | null"}},"required":["on","criterion"],"additionalProperties":false,"description":"The source gate, \"Check on save\": null = no check. The promotion reads it before a row is born (see ./data_source_items.md Lifecycle 6.5).","isRequired":true,"uniqueKey":"item.qualify.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"on":{"type":"boolean","description":"The switch. `on` with no criterion is refused (422 on qualify.criterion, rule required_if)."},"criterion":{"oneOf":[{"type":"string","minLength":1,"maxLength":2000,"description":"Who passes, in the user's words (\"a decision maker at a marketing agency, not a freelancer\"). Trimmed; null while the check is off."},{"type":"null","minLength":1,"maxLength":2000,"description":"Who passes, in the user's words (\"a decision maker at a marketing agency, not a freelancer\"). Trimmed; null while the check is off."}]}},"required":["on","criterion"],"additionalProperties":false,"description":"The source gate, \"Check on save\": null = no check. The promotion reads it before a row is born (see ./data_source_items.md Lifecycle 6.5).","isRequired":true,"uniqueKey":"item.qualify.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"item.qualify","typeLabel":"object | null"},"on_duplicate":{"type":"string","enum":["skip","move"],"description":"Duplicate-person policy; default 'skip'.","isRequired":true,"uniqueKey":"item.on_duplicate","typeLabel":"enum\u003cstring>"},"add_tags_to_duplicate":{"type":"boolean","description":"Merge tag_sids onto matched duplicates; default false.","isRequired":true,"uniqueKey":"item.add_tags_to_duplicate","typeLabel":"boolean"},"status":{"type":"string","enum":["draft","active","paused","completed","failed"],"isRequired":true,"uniqueKey":"item.status","typeLabel":"enum\u003cstring>"},"status_reason":{"oneOf":[{"type":"string","description":"Reason token behind a paused or failed state (max 2048): playtable_deleted, sales_nav_required, recruiter_required, recruiter_reauth_required, executor_account_missing, plan_failed, collect_failed, collect_interrupted, post_unavailable (the post could not be read: deleted or private), target_not_found (no page at the slug), allowance_exhausted (the AI post filter ran out of credits; paused), …","isRequired":true,"uniqueKey":"item.status_reason.oneOf.0","typeLabel":"string"},{"type":"null","description":"Reason token behind a paused or failed state (max 2048): playtable_deleted, sales_nav_required, recruiter_required, recruiter_reauth_required, executor_account_missing, plan_failed, collect_failed, collect_interrupted, post_unavailable (the post could not be read: deleted or private), target_not_found (no page at the slug), allowance_exhausted (the AI post filter ran out of credits; paused), …","isRequired":true,"uniqueKey":"item.status_reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"item.status_reason","typeLabel":"string | null"},"next_collect_at":{"oneOf":[{"type":"string","description":"ISO 8601 UTC - the collect clock of a search kind, advanced by checkpoints and the repeat interval. null for csv and webhook, and nulled on a bus-served sender search once its scrapes are provisioned (gtm-api owns the cadence from then on).","isRequired":true,"uniqueKey":"item.next_collect_at.oneOf.0","typeLabel":"string"},{"type":"null","description":"ISO 8601 UTC - the collect clock of a search kind, advanced by checkpoints and the repeat interval. null for csv and webhook, and nulled on a bus-served sender search once its scrapes are provisioned (gtm-api owns the cadence from then on).","isRequired":true,"uniqueKey":"item.next_collect_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"item.next_collect_at","typeLabel":"string | null"},"created_by":{"type":"object","properties":{"actor_type":{"type":"string","enum":["user","support","api_key","system","agent"],"isRequired":true,"uniqueKey":"item.created_by.actor_type","typeLabel":"enum\u003cstring>"},"actor_sid":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"item.created_by.actor_sid.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"item.created_by.actor_sid.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"item.created_by.actor_sid","typeLabel":"string | null"},"team_sid":{"type":"string","isRequired":true,"uniqueKey":"item.created_by.team_sid","typeLabel":"string"},"permissions":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"item.created_by.permissions.additionalProperties","typeLabel":"any"},"description":"Internal audit context: the grant set the actor held at write time. Not a contract.","isRequired":true,"uniqueKey":"item.created_by.permissions","typeLabel":"object"},"actor_name":{"oneOf":[{"type":"string","description":"The OAuth client that acted (\"Claude\", \"n8n\"); null for a user, an API key or a system job.","uniqueKey":"item.created_by.actor_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"The OAuth client that acted (\"Claude\", \"n8n\"); null for a user, an API key or a system job.","uniqueKey":"item.created_by.actor_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"item.created_by.actor_name","typeLabel":"string | null"},"oauth_client_sid":{"oneOf":[{"type":"string","description":"The acting OAuth client (id_oc_*); null off the OAuth path.","uniqueKey":"item.created_by.oauth_client_sid.oneOf.0","typeLabel":"string"},{"type":"null","description":"The acting OAuth client (id_oc_*); null off the OAuth path.","uniqueKey":"item.created_by.oauth_client_sid.oneOf.1","typeLabel":"null"}],"uniqueKey":"item.created_by.oauth_client_sid","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","description":"Why a system actor wrote the row (snapshot_capture_job, ...); null otherwise.","uniqueKey":"item.created_by.reason.oneOf.0","typeLabel":"string"},{"type":"null","description":"Why a system actor wrote the row (snapshot_capture_job, ...); null otherwise.","uniqueKey":"item.created_by.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"item.created_by.reason","typeLabel":"string | null"},"cluster_id":{"oneOf":[{"type":"integer","description":"Internal audit context: the cluster that served the write.","uniqueKey":"item.created_by.cluster_id.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Internal audit context: the cluster that served the write.","uniqueKey":"item.created_by.cluster_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"item.created_by.cluster_id","typeLabel":"integer | null"},"trace_id":{"oneOf":[{"type":"string","description":"Internal audit context: the trace id of the request that wrote the row.","uniqueKey":"item.created_by.trace_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Internal audit context: the trace id of the request that wrote the row.","uniqueKey":"item.created_by.trace_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"item.created_by.trace_id","typeLabel":"string | null"}},"required":["actor_type","actor_sid","team_sid","permissions"],"isRequired":true,"uniqueKey":"item.created_by","typeLabel":"object"},"deleted_by":{"oneOf":[{"type":"object","properties":{"actor_type":{"type":"string","enum":["user","support","api_key","system","agent"],"isRequired":true,"uniqueKey":"item.deleted_by.oneOf.0.actor_type","typeLabel":"enum\u003cstring>"},"actor_sid":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"item.deleted_by.oneOf.0.actor_sid.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"item.deleted_by.oneOf.0.actor_sid.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"item.deleted_by.oneOf.0.actor_sid","typeLabel":"string | null"},"team_sid":{"type":"string","isRequired":true,"uniqueKey":"item.deleted_by.oneOf.0.team_sid","typeLabel":"string"},"permissions":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"item.deleted_by.oneOf.0.permissions.additionalProperties","typeLabel":"any"},"description":"Internal audit context: the grant set the actor held at write time. Not a contract.","isRequired":true,"uniqueKey":"item.deleted_by.oneOf.0.permissions","typeLabel":"object"},"actor_name":{"oneOf":[{"type":"string","description":"The OAuth client that acted (\"Claude\", \"n8n\"); null for a user, an API key or a system job.","uniqueKey":"item.deleted_by.oneOf.0.actor_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"The OAuth client that acted (\"Claude\", \"n8n\"); null for a user, an API key or a system job.","uniqueKey":"item.deleted_by.oneOf.0.actor_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"item.deleted_by.oneOf.0.actor_name","typeLabel":"string | null"},"oauth_client_sid":{"oneOf":[{"type":"string","description":"The acting OAuth client (id_oc_*); null off the OAuth path.","uniqueKey":"item.deleted_by.oneOf.0.oauth_client_sid.oneOf.0","typeLabel":"string"},{"type":"null","description":"The acting OAuth client (id_oc_*); null off the OAuth path.","uniqueKey":"item.deleted_by.oneOf.0.oauth_client_sid.oneOf.1","typeLabel":"null"}],"uniqueKey":"item.deleted_by.oneOf.0.oauth_client_sid","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","description":"Why a system actor wrote the row (snapshot_capture_job, ...); null otherwise.","uniqueKey":"item.deleted_by.oneOf.0.reason.oneOf.0","typeLabel":"string"},{"type":"null","description":"Why a system actor wrote the row (snapshot_capture_job, ...); null otherwise.","uniqueKey":"item.deleted_by.oneOf.0.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"item.deleted_by.oneOf.0.reason","typeLabel":"string | null"},"cluster_id":{"oneOf":[{"type":"integer","description":"Internal audit context: the cluster that served the write.","uniqueKey":"item.deleted_by.oneOf.0.cluster_id.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Internal audit context: the cluster that served the write.","uniqueKey":"item.deleted_by.oneOf.0.cluster_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"item.deleted_by.oneOf.0.cluster_id","typeLabel":"integer | null"},"trace_id":{"oneOf":[{"type":"string","description":"Internal audit context: the trace id of the request that wrote the row.","uniqueKey":"item.deleted_by.oneOf.0.trace_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Internal audit context: the trace id of the request that wrote the row.","uniqueKey":"item.deleted_by.oneOf.0.trace_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"item.deleted_by.oneOf.0.trace_id","typeLabel":"string | null"}},"required":["actor_type","actor_sid","team_sid","permissions"],"isRequired":true,"uniqueKey":"item.deleted_by.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"actor_type":{"type":"string","enum":["user","support","api_key","system","agent"]},"actor_sid":{"oneOf":[{"type":"string"},{"type":"null"}]},"team_sid":{"type":"string"},"actor_name":{"oneOf":[{"type":"string","description":"The OAuth client that acted (\"Claude\", \"n8n\"); null for a user, an API key or a system job."},{"type":"null","description":"The OAuth client that acted (\"Claude\", \"n8n\"); null for a user, an API key or a system job."}]},"oauth_client_sid":{"oneOf":[{"type":"string","description":"The acting OAuth client (id_oc_*); null off the OAuth path."},{"type":"null","description":"The acting OAuth client (id_oc_*); null off the OAuth path."}]},"reason":{"oneOf":[{"type":"string","description":"Why a system actor wrote the row (snapshot_capture_job, ...); null otherwise."},{"type":"null","description":"Why a system actor wrote the row (snapshot_capture_job, ...); null otherwise."}]},"permissions":{"type":"object","additionalProperties":{"oneOf":[{}]},"description":"Internal audit context: the grant set the actor held at write time. Not a contract."},"cluster_id":{"oneOf":[{"type":"integer","description":"Internal audit context: the cluster that served the write."},{"type":"null","description":"Internal audit context: the cluster that served the write."}]},"trace_id":{"oneOf":[{"type":"string","description":"Internal audit context: the trace id of the request that wrote the row."},{"type":"null","description":"Internal audit context: the trace id of the request that wrote the row."}]}},"required":["actor_type","actor_sid","team_sid","permissions"],"isRequired":true,"uniqueKey":"item.deleted_by.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"item.deleted_by","typeLabel":"object | null"},"created_at":{"type":"string","isRequired":true,"uniqueKey":"item.created_at","typeLabel":"string"},"updated_at":{"type":"string","isRequired":true,"uniqueKey":"item.updated_at","typeLabel":"string"},"deleted_at":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"item.deleted_at.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"item.deleted_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"item.deleted_at","typeLabel":"string | null"}},"required":["sid","team_sid","playtable_sid","name","type","object_type","sender_profile_sid","ingest_key","payload","field_mapping","tag_sids","qualify","on_duplicate","add_tags_to_duplicate","status","status_reason","next_collect_at","created_by","deleted_by","created_at","updated_at","deleted_at"],"isRequired":true,"uniqueKey":"item","typeLabel":"object"},"already_exists":{"type":"boolean","isRequired":true,"uniqueKey":"already_exists","typeLabel":"boolean"},"meta":{"type":"object","properties":{"trace_id":{"type":"string","description":"UUID v7; same 128-bit value as the X-Trace-Id header.","isRequired":true,"uniqueKey":"meta.trace_id","typeLabel":"string"},"span_id":{"type":"string","pattern":"^[0-9a-f]{16}$","description":"16 hex chars, root span of this request.","isRequired":true,"uniqueKey":"meta.span_id","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC (Y-m-dTH:i:sZ), response time.","isRequired":true,"uniqueKey":"meta.timestamp","typeLabel":"string"},"duration_ms":{"type":"integer","minimum":0,"description":"Server-side wall clock.","isRequired":true,"uniqueKey":"meta.duration_ms","typeLabel":"integer"},"team_sid":{"oneOf":[{"type":"string","description":"The team this call ran in (the token team, or the team_sid override). Null when unauthenticated; absent from pre-2026-08-20 backends.","uniqueKey":"meta.team_sid.oneOf.0","typeLabel":"string"},{"type":"null","description":"The team this call ran in (the token team, or the team_sid override). Null when unauthenticated; absent from pre-2026-08-20 backends.","uniqueKey":"meta.team_sid.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta.team_sid","typeLabel":"string | null"},"actor_type":{"oneOf":[{"type":"string","description":"user | agent | api_key | system. Null when unauthenticated; absent from pre-2026-08-20 backends.","uniqueKey":"meta.actor_type.oneOf.0","typeLabel":"string"},{"type":"null","description":"user | agent | api_key | system. Null when unauthenticated; absent from pre-2026-08-20 backends.","uniqueKey":"meta.actor_type.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta.actor_type","typeLabel":"string | null"}},"required":["trace_id","span_id","timestamp","duration_ms"],"isRequired":true,"uniqueKey":"meta","typeLabel":"object"},"ingest_url":{"type":"string","description":"type=webhook only: {api_base}/external/ingest/{ingest_key} - the endpoint the customer CRM POSTs records to. The URL IS the credential: hand it to the user over a channel they trust, and rotate it to revoke.","uniqueKey":"ingest_url","typeLabel":"string"}},"required":["success","operation","item","already_exists","meta"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":true,"operation":"create","item":{"sid":"\u003cstring>","team_sid":"\u003cstring>","playtable_sid":"\u003cstring>","name":"\u003cstring>","type":"ai_search","object_type":"people","sender_profile_sid":"\u003cstring>","ingest_key":"\u003cstring>","payload":{"platform":"linkedin","surface":"search","repeat":"hourly","mode":"create","target":"post","window":{"days":7},"relevance":{"prompt":"\u003cstring>"},"collect":{"reactions":true,"comments":true,"reposts":true},"posts":[{"urn":"\u003cstring>","title":"\u003cstring>","published_at":"\u003cstring>","verdict":"match","verdict_reason":"\u003cstring>"}]},"field_mapping":[{"source":"\u003cstring>","target_kind":"people_attribute","target":"\u003cstring>","name":"\u003cstring>"}],"tag_sids":["\u003cstring>"],"qualify":{"on":true,"criterion":"\u003cstring>"},"on_duplicate":"skip","add_tags_to_duplicate":true,"status":"draft","status_reason":"\u003cstring>","next_collect_at":"\u003cstring>","created_by":{"actor_type":"user","actor_sid":"\u003cstring>","team_sid":"\u003cstring>","permissions":{},"actor_name":"\u003cstring>","oauth_client_sid":"\u003cstring>","reason":"\u003cstring>","cluster_id":123,"trace_id":"\u003cstring>"},"deleted_by":{"actor_type":"user","actor_sid":"\u003cstring>","team_sid":"\u003cstring>","permissions":{},"actor_name":"\u003cstring>","oauth_client_sid":"\u003cstring>","reason":"\u003cstring>","cluster_id":123,"trace_id":"\u003cstring>"},"created_at":"\u003cstring>","updated_at":"\u003cstring>","deleted_at":"\u003cstring>"},"already_exists":true,"meta":{"trace_id":"\u003cstring>","span_id":"\u003cstring>","timestamp":"\u003cstring>","duration_ms":1,"team_sid":"\u003cstring>","actor_type":"\u003cstring>"},"ingest_url":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"7025c950-51d8-4d3c-a72e-d212cc0fca00":{"description":"MCP error envelope. `error.code` is one of validation_failed, nothing_to_update, not_found, relation_not_found, invalid_transition, limit_exceeded, payment_required, duplicate_rejected, conflict, delete_blocked, unauthorized, forbidden, rate_limited, not_implemented.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","enum":[false],"isRequired":true,"uniqueKey":"success","typeLabel":"enum\u003cboolean>"},"error":{"type":"object","properties":{"code":{"type":"string","enum":["validation_failed","nothing_to_update","not_found","relation_not_found","invalid_transition","limit_exceeded","payment_required","duplicate_rejected","conflict","delete_blocked","unauthorized","forbidden","rate_limited","internal_error","service_unavailable","not_implemented"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"recoverable":{"type":"boolean","isRequired":true,"uniqueKey":"error.recoverable","typeLabel":"boolean"},"suggestion":{"type":"string","uniqueKey":"error.suggestion","typeLabel":"string"},"field_errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"object","properties":{"rule":{"type":"string","isRequired":true,"uniqueKey":"error.field_errors.additionalProperties.items.[INDEX].rule","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.field_errors.additionalProperties.items.[INDEX].message","typeLabel":"string"}},"required":["rule","message"],"uniqueKey":"error.field_errors.additionalProperties.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.field_errors.additionalProperties","typeLabel":"object[]"},"uniqueKey":"error.field_errors","typeLabel":"object"},"blockers":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable blocker type (active_flow, pending_tasks, …).","isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].type","typeLabel":"string"},"severity":{"type":"string","enum":["hard","soft"],"description":"hard = external action required; soft = acknowledge is enough.","isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].severity","typeLabel":"enum\u003cstring>"},"description":{"type":"string","isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].description","typeLabel":"string"},"entity_sid":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].entity_sid.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].entity_sid.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].entity_sid","typeLabel":"string | null"},"resolution":{"type":"string","description":"Hard: tool name to call. Soft: code for acknowledge[].","isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].resolution","typeLabel":"string"},"resolution_hint":{"type":"string","isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].resolution_hint","typeLabel":"string"},"count":{"type":"integer","uniqueKey":"error.blockers.items.[INDEX].count","typeLabel":"integer"}},"required":["type","severity","description","entity_sid","resolution","resolution_hint"],"uniqueKey":"error.blockers.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.blockers","typeLabel":"object[]"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"error.context.additionalProperties","typeLabel":"any"},"uniqueKey":"error.context","typeLabel":"object"}},"required":["code","message","recoverable"],"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"meta":{"type":"object","properties":{"trace_id":{"type":"string","description":"UUID v7; same 128-bit value as the X-Trace-Id header.","isRequired":true,"uniqueKey":"meta.trace_id","typeLabel":"string"},"span_id":{"type":"string","pattern":"^[0-9a-f]{16}$","description":"16 hex chars, root span of this request.","isRequired":true,"uniqueKey":"meta.span_id","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC (Y-m-dTH:i:sZ), response time.","isRequired":true,"uniqueKey":"meta.timestamp","typeLabel":"string"},"duration_ms":{"type":"integer","minimum":0,"description":"Server-side wall clock.","isRequired":true,"uniqueKey":"meta.duration_ms","typeLabel":"integer"},"team_sid":{"oneOf":[{"type":"string","description":"The team this call ran in (the token team, or the team_sid override). Null when unauthenticated; absent from pre-2026-08-20 backends.","uniqueKey":"meta.team_sid.oneOf.0","typeLabel":"string"},{"type":"null","description":"The team this call ran in (the token team, or the team_sid override). Null when unauthenticated; absent from pre-2026-08-20 backends.","uniqueKey":"meta.team_sid.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta.team_sid","typeLabel":"string | null"},"actor_type":{"oneOf":[{"type":"string","description":"user | agent | api_key | system. Null when unauthenticated; absent from pre-2026-08-20 backends.","uniqueKey":"meta.actor_type.oneOf.0","typeLabel":"string"},{"type":"null","description":"user | agent | api_key | system. Null when unauthenticated; absent from pre-2026-08-20 backends.","uniqueKey":"meta.actor_type.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta.actor_type","typeLabel":"string | null"}},"required":["trace_id","span_id","timestamp","duration_ms"],"uniqueKey":"meta","typeLabel":"object"}},"required":["success","error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"error":{"code":"validation_failed","message":"\u003cstring>","recoverable":true,"suggestion":"\u003cstring>","field_errors":{},"blockers":[{"type":"\u003cstring>","severity":"hard","description":"\u003cstring>","entity_sid":"\u003cstring>","resolution":"\u003cstring>","resolution_hint":"\u003cstring>","count":123}],"context":{}},"meta":{"trace_id":"\u003cstring>","span_id":"\u003cstring>","timestamp":"\u003cstring>","duration_ms":1,"team_sid":"\u003cstring>","actor_type":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"3816e57b-cadc-4a99-8a86-3564bb01fef7":{"description":"MCP error envelope with `error.code` internal_error or service_unavailable.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","enum":[false],"isRequired":true,"uniqueKey":"success","typeLabel":"enum\u003cboolean>"},"error":{"type":"object","properties":{"code":{"type":"string","enum":["validation_failed","nothing_to_update","not_found","relation_not_found","invalid_transition","limit_exceeded","payment_required","duplicate_rejected","conflict","delete_blocked","unauthorized","forbidden","rate_limited","internal_error","service_unavailable","not_implemented"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"recoverable":{"type":"boolean","isRequired":true,"uniqueKey":"error.recoverable","typeLabel":"boolean"},"suggestion":{"type":"string","uniqueKey":"error.suggestion","typeLabel":"string"},"field_errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"object","properties":{"rule":{"type":"string","isRequired":true,"uniqueKey":"error.field_errors.additionalProperties.items.[INDEX].rule","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.field_errors.additionalProperties.items.[INDEX].message","typeLabel":"string"}},"required":["rule","message"],"uniqueKey":"error.field_errors.additionalProperties.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.field_errors.additionalProperties","typeLabel":"object[]"},"uniqueKey":"error.field_errors","typeLabel":"object"},"blockers":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable blocker type (active_flow, pending_tasks, …).","isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].type","typeLabel":"string"},"severity":{"type":"string","enum":["hard","soft"],"description":"hard = external action required; soft = acknowledge is enough.","isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].severity","typeLabel":"enum\u003cstring>"},"description":{"type":"string","isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].description","typeLabel":"string"},"entity_sid":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].entity_sid.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].entity_sid.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].entity_sid","typeLabel":"string | null"},"resolution":{"type":"string","description":"Hard: tool name to call. Soft: code for acknowledge[].","isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].resolution","typeLabel":"string"},"resolution_hint":{"type":"string","isRequired":true,"uniqueKey":"error.blockers.items.[INDEX].resolution_hint","typeLabel":"string"},"count":{"type":"integer","uniqueKey":"error.blockers.items.[INDEX].count","typeLabel":"integer"}},"required":["type","severity","description","entity_sid","resolution","resolution_hint"],"uniqueKey":"error.blockers.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.blockers","typeLabel":"object[]"},"context":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"error.context.additionalProperties","typeLabel":"any"},"uniqueKey":"error.context","typeLabel":"object"}},"required":["code","message","recoverable"],"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"meta":{"type":"object","properties":{"trace_id":{"type":"string","description":"UUID v7; same 128-bit value as the X-Trace-Id header.","isRequired":true,"uniqueKey":"meta.trace_id","typeLabel":"string"},"span_id":{"type":"string","pattern":"^[0-9a-f]{16}$","description":"16 hex chars, root span of this request.","isRequired":true,"uniqueKey":"meta.span_id","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC (Y-m-dTH:i:sZ), response time.","isRequired":true,"uniqueKey":"meta.timestamp","typeLabel":"string"},"duration_ms":{"type":"integer","minimum":0,"description":"Server-side wall clock.","isRequired":true,"uniqueKey":"meta.duration_ms","typeLabel":"integer"},"team_sid":{"oneOf":[{"type":"string","description":"The team this call ran in (the token team, or the team_sid override). Null when unauthenticated; absent from pre-2026-08-20 backends.","uniqueKey":"meta.team_sid.oneOf.0","typeLabel":"string"},{"type":"null","description":"The team this call ran in (the token team, or the team_sid override). Null when unauthenticated; absent from pre-2026-08-20 backends.","uniqueKey":"meta.team_sid.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta.team_sid","typeLabel":"string | null"},"actor_type":{"oneOf":[{"type":"string","description":"user | agent | api_key | system. Null when unauthenticated; absent from pre-2026-08-20 backends.","uniqueKey":"meta.actor_type.oneOf.0","typeLabel":"string"},{"type":"null","description":"user | agent | api_key | system. Null when unauthenticated; absent from pre-2026-08-20 backends.","uniqueKey":"meta.actor_type.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta.actor_type","typeLabel":"string | null"}},"required":["trace_id","span_id","timestamp","duration_ms"],"uniqueKey":"meta","typeLabel":"object"}},"required":["success","error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"error":{"code":"validation_failed","message":"\u003cstring>","recoverable":true,"suggestion":"\u003cstring>","field_errors":{},"blockers":[{"type":"\u003cstring>","severity":"hard","description":"\u003cstring>","entity_sid":"\u003cstring>","resolution":"\u003cstring>","resolution_hint":"\u003cstring>","count":123}],"context":{}},"meta":{"trace_id":"\u003cstring>","span_id":"\u003cstring>","timestamp":"\u003cstring>","duration_ms":1,"team_sid":"\u003cstring>","actor_type":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"d3ab5cdd-2aa1-426f-93da-16562fad923f":{"BearerJwt":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Access token issued by gs.service.id. Its `access_identity` claim carries `team_sid`, `actor_sid` and `actor_type`, and that team scope is authoritative.","scopes":[],"schemeName":"BearerJwt"},"TeamSid":{"type":"apiKey","in":"header","name":"Team-SID","description":"Team scope for tokens that do not carry one. Ignored when the token already names a team.","scopes":[],"schemeName":"TeamSid"}}},"servers":{"71624634-b298-4b81-ba22-a05986db64c0":{"url":"https://beta.getsales.io/playtables/v1","description":"Production (the gateway path on the beta ring; the origin is provisioned per DEPLOY_MAP.md)"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Access token issued by gs.service.id. Its `access_identity` claim carries `team_sid`, `actor_sid` and `actor_type`, and that team scope is authoritative.","scopes":[],"schemeName":"BearerJwt"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Access token issued by gs.service.id. Its `access_identity` claim carries `team_sid`, `actor_sid` and `actor_type`, and that team scope is authoritative.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"BearerJwt","name":"Authorization"},{"scheme":{"type":"apiKey","in":"header","name":"Team-SID","description":"Team scope for tokens that do not carry one. Ignored when the token already names a team.","scopes":[],"schemeName":"TeamSid"},"schema":{"title":"Team-SID","type":"string","description":"Team scope for tokens that do not carry one. Ignored when the token already names a team.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"TeamSid","name":"Team-SID"}],"title":"BearerJwt \u0026 TeamSid"}]},"originalFileLocation":"api-reference/playtables/openapi.yaml"},"subdomain":"getsales","siteName":"GetSales","title":"Create data source - GetSales","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-01T05:07:40.271Z","originalFileLocation":"api-reference/playtables/data_sources/create-data-source.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=\"Create an ingestion source into a table. type says who runs it and is required: the same Sales Navigator link is a valid ai_search and a valid sender_search, so a link\u0026#x27;s shape never decides. ai_search: exactly one of url, payload.prompt or payload.filters; the pool runs it for credits, no sender. sender_search: sender_profile_sid plus url, unless payload.surface is my_network or messenger; payload.repeat reruns it. post_engagement: sender_profile_sid plus a post, profile or company page link (preview_post_engagement reads it back first); payload.window, relevance, collect and repeat tune it; every person lands with what they did. find_people: payload.company_sids and/or company_filter, plus a prompt or filters; always people. webhook: payload.records_path; the answer carries ingest_url (the credential: rotate to revoke). csv is refused: upload it, then import_data_source. Refusals are 422, the reason in field_errorsfield.rule: url needs_sender (only a Sales Navigator search runs on the pool: the rest is a sender_search), url post_engagement (a post link in a search kind), link_not_recognized, object_type or payload.target agreement, payload in, payload.collect required, and on sender_profile_sid linkedin_account_missing, sales_nav_required, recruiter_required or recruiter_signed_out. No dedup. When NOT: blocking identifiers (create_stoplist_entry); feeding people into outreach (workflow sources). Contract: - MCP tool create_data_source, registry package mcp.playtables/data_sources, mount playtables.sources. - Operation create, response envelope create. - Flags: none.\">\u003cmeta data-mint-head name=\"application-name\" content=\"GetSales\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/getsales/Xk1sYTgBQiFOp0cW/_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/getsales/Xk1sYTgBQiFOp0cW/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/getsales/Xk1sYTgBQiFOp0cW/_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/getsales/Xk1sYTgBQiFOp0cW/_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/getsales/Xk1sYTgBQiFOp0cW/_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/getsales/Xk1sYTgBQiFOp0cW/_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/getsales/Xk1sYTgBQiFOp0cW/_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/getsales/Xk1sYTgBQiFOp0cW/_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/getsales/Xk1sYTgBQiFOp0cW/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create data source - GetSales\">\u003cmeta data-mint-head property=\"og:description\" content=\"Create an ingestion source into a table. type says who runs it and is required: the same Sales Navigator link is a valid ai_search and a valid sender_search, so a link\u0026#x27;s shape never decides. ai_search: exactly one of url, payload.prompt or payload.filters; the pool runs it for credits, no sender. sender_search: sender_profile_sid plus url, unless payload.surface is my_network or messenger; payload.repeat reruns it. post_engagement: sender_profile_sid plus a post, profile or company page link (preview_post_engagement reads it back first); payload.window, relevance, collect and repeat tune it; every person lands with what they did. find_people: payload.company_sids and/or company_filter, plus a prompt or filters; always people. webhook: payload.records_path; the answer carries ingest_url (the credential: rotate to revoke). csv is refused: upload it, then import_data_source. Refusals are 422, the reason in field_errorsfield.rule: url needs_sender (only a Sales Navigator search runs on the pool: the rest is a sender_search), url post_engagement (a post link in a search kind), link_not_recognized, object_type or payload.target agreement, payload in, payload.collect required, and on sender_profile_sid linkedin_account_missing, sales_nav_required, recruiter_required or recruiter_signed_out. No dedup. When NOT: blocking identifiers (create_stoplist_entry); feeding people into outreach (workflow sources). Contract: - MCP tool create_data_source, registry package mcp.playtables/data_sources, mount playtables.sources. - Operation create, response envelope create. - Flags: none.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"GetSales\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.getsales.io/api-reference/playtables/data_sources/create-data-source\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://getsales.mintlify.app/_mintlify/api/og/v2?division=data_sources\u0026amp;title=Create+data+source\u0026amp;description=Create+an+ingestion+source+into+a+table.+%60type%60+says+who+runs+it+and+is+required%3A+the+same+Sales+Navigator+link+is+a+valid+ai_search+and+a+valid+sender_search%2C+\u0026amp;theme=2557d625acdab73e379ce8c9\u0026amp;signature=3cad21faf289355a2d7a5657530c1a039886aacc28a60bf15ccf95c4989315de\">\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=\"Create data source - GetSales\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Create an ingestion source into a table. type says who runs it and is required: the same Sales Navigator link is a valid ai_search and a valid sender_search, so a link\u0026#x27;s shape never decides. ai_search: exactly one of url, payload.prompt or payload.filters; the pool runs it for credits, no sender. sender_search: sender_profile_sid plus url, unless payload.surface is my_network or messenger; payload.repeat reruns it. post_engagement: sender_profile_sid plus a post, profile or company page link (preview_post_engagement reads it back first); payload.window, relevance, collect and repeat tune it; every person lands with what they did. find_people: payload.company_sids and/or company_filter, plus a prompt or filters; always people. webhook: payload.records_path; the answer carries ingest_url (the credential: rotate to revoke). csv is refused: upload it, then import_data_source. Refusals are 422, the reason in field_errorsfield.rule: url needs_sender (only a Sales Navigator search runs on the pool: the rest is a sender_search), url post_engagement (a post link in a search kind), link_not_recognized, object_type or payload.target agreement, payload in, payload.collect required, and on sender_profile_sid linkedin_account_missing, sales_nav_required, recruiter_required or recruiter_signed_out. No dedup. When NOT: blocking identifiers (create_stoplist_entry); feeding people into outreach (workflow sources). Contract: - MCP tool create_data_source, registry package mcp.playtables/data_sources, mount playtables.sources. - Operation create, response envelope create. - Flags: none.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://getsales.mintlify.app/_mintlify/api/og/v2?division=data_sources\u0026amp;title=Create+data+source\u0026amp;description=Create+an+ingestion+source+into+a+table.+%60type%60+says+who+runs+it+and+is+required%3A+the+same+Sales+Navigator+link+is+a+valid+ai_search+and+a+valid+sender_search%2C+\u0026amp;theme=2557d625acdab73e379ce8c9\u0026amp;signature=3cad21faf289355a2d7a5657530c1a039886aacc28a60bf15ccf95c4989315de\">\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/getsales/Xk1sYTgBQiFOp0cW/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"GetSales\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#4B64FF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.getsales.io/api-reference/playtables/data_sources/create-data-source\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/playtables/data_sources/create-data-source.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.getsales.io/#organization\",\"name\":\"GetSales\",\"url\":\"https://docs.getsales.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/getsales/um-g-UJLB97yTl7a/logo/light.svg?fit=max\u0026auto=format\u0026n=um-g-UJLB97yTl7a\u0026q=85\u0026s=428985b239f36914fa7e1e44f6211540\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.getsales.io#website\",\"name\":\"GetSales\",\"url\":\"https://docs.getsales.io\",\"publisher\":{\"@id\":\"https://docs.getsales.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.getsales.io/api-reference/playtables/data_sources/create-data-source#webpage\",\"url\":\"https://docs.getsales.io/api-reference/playtables/data_sources/create-data-source\",\"name\":\"Create data source\",\"description\":\"Create an ingestion source into a table. type says who runs it and is required: the same Sales Navigator link is a valid ai_search and a valid sender_search, so a link's shape never decides. ai_search: exactly one of url, payload.prompt or payload.filters; the pool runs it for credits, no sender. sender_search: sender_profile_sid plus url, unless payload.surface is my_network or messenger; payload.repeat reruns it. post_engagement: sender_profile_sid plus a post, profile or company page link (preview_post_engagement reads it back first); payload.window, relevance, collect and repeat tune it; every person lands with what they did. find_people: payload.company_sids and/or company_filter, plus a prompt or filters; always people. webhook: payload.records_path; the answer carries ingest_url (the credential: rotate to revoke). csv is refused: upload it, then import_data_source. Refusals are 422, the reason in field_errorsfield.rule: url needs_sender (only a Sales Navigator search runs on the pool: the rest is a sender_search), url post_engagement (a post link in a search kind), link_not_recognized, object_type or payload.target agreement, payload in, payload.collect required, and on sender_profile_sid linkedin_account_missing, sales_nav_required, recruiter_required or recruiter_signed_out. No dedup. When NOT: blocking identifiers (create_stoplist_entry); feeding people into outreach (workflow sources). Contract: - MCP tool create_data_source, registry package mcp.playtables/data_sources, mount playtables.sources. - Operation create, response envelope create. - Flags: none.\",\"dateModified\":\"2026-11-01T05:07:40.271Z\",\"isPartOf\":{\"@id\":\"https://docs.getsales.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.getsales.io/api-reference/playtables/data_sources/create-data-source#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.getsales.io/api-reference/playtables/data_sources/create-data-source#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Playtables API\",\"item\":\"https://docs.getsales.io/api-reference/playtables/activities/activities-metrics\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create data source\",\"item\":\"https://docs.getsales.io/api-reference/playtables/data_sources/create-data-source\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.getsales.io/api-reference/playtables/data_sources/create-data-source#apireference\",\"headline\":\"Create data source\",\"name\":\"Create data source\",\"description\":\"Create an ingestion source into a table. type says who runs it and is required: the same Sales Navigator link is a valid ai_search and a valid sender_search, so a link's shape never decides. ai_search: exactly one of url, payload.prompt or payload.filters; the pool runs it for credits, no sender. sender_search: sender_profile_sid plus url, unless payload.surface is my_network or messenger; payload.repeat reruns it. post_engagement: sender_profile_sid plus a post, profile or company page link (preview_post_engagement reads it back first); payload.window, relevance, collect and repeat tune it; every person lands with what they did. find_people: payload.company_sids and/or company_filter, plus a prompt or filters; always people. webhook: payload.records_path; the answer carries ingest_url (the credential: rotate to revoke). csv is refused: upload it, then import_data_source. Refusals are 422, the reason in field_errorsfield.rule: url needs_sender (only a Sales Navigator search runs on the pool: the rest is a sender_search), url post_engagement (a post link in a search kind), link_not_recognized, object_type or payload.target agreement, payload in, payload.collect required, and on sender_profile_sid linkedin_account_missing, sales_nav_required, recruiter_required or recruiter_signed_out. No dedup. When NOT: blocking identifiers (create_stoplist_entry); feeding people into outreach (workflow sources). Contract: - MCP tool create_data_source, registry package mcp.playtables/data_sources, mount playtables.sources. - Operation create, response envelope create. - Flags: none.\",\"url\":\"https://docs.getsales.io/api-reference/playtables/data_sources/create-data-source\",\"mainEntityOfPage\":{\"@id\":\"https://docs.getsales.io/api-reference/playtables/data_sources/create-data-source#webpage\"},\"dateModified\":\"2026-11-01T05:07:40.271Z\",\"publisher\":{\"@id\":\"https://docs.getsales.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.getsales.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"GetSales\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"GetSales","nav":{"global":null,"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":""}]},{"tab":"API Reference","groups":[{"group":"Overview","pages":[{"title":"API reference overview","sidebarTitle":"Overview","href":"/api-reference/overview"}]},{"group":"Playtables API","pages":[{"group":"activities","pages":[{"title":"Activities metrics","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/activities/metrics","href":"/api-reference/playtables/activities/activities-metrics"},{"title":"Search activities","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/activities/search","href":"/api-reference/playtables/activities/search-activities"},{"title":"Act on activity","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/activities/{sid}/act","href":"/api-reference/playtables/activities/act-on-activity"},{"title":"Draft for activity","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/activities/{sid}/draft","href":"/api-reference/playtables/activities/draft-for-activity"}]},{"group":"activity_objects","pages":[{"title":"Search activity objects","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/activity-objects/search","href":"/api-reference/playtables/activity_objects/search-activity-objects"}]},{"group":"companies","pages":[{"title":"Create company","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/companies","href":"/api-reference/playtables/companies/create-company"},{"title":"Companies metrics","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/companies/metrics","href":"/api-reference/playtables/companies/companies-metrics"},{"title":"Read LinkedIn company","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/companies/read-linkedin","href":"/api-reference/playtables/companies/read-linkedin-company"},{"title":"Search companies","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/companies/search","href":"/api-reference/playtables/companies/search-companies"},{"title":"Suggest company filter values","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/companies/suggest","href":"/api-reference/playtables/companies/suggest-company-filter-values"},{"title":"Get company","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml get /api/companies/{sid}","href":"/api-reference/playtables/companies/get-company"},{"title":"Delete company","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml delete /api/companies/{sid}","href":"/api-reference/playtables/companies/delete-company"},{"title":"Update company","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml patch /api/companies/{sid}","href":"/api-reference/playtables/companies/update-company"},{"title":"Detach company from playtable","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/companies/{sid}/detach","href":"/api-reference/playtables/companies/detach-company-from-playtable"},{"title":"Make company primary","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/companies/{sid}/make-primary","href":"/api-reference/playtables/companies/make-company-primary"},{"title":"Merge companies","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/companies/{sid}/merge","href":"/api-reference/playtables/companies/merge-companies"}]},{"group":"credit_ledger_entries","pages":[{"title":"Credit ledger entries metrics","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/credit-ledger-entries/metrics","href":"/api-reference/playtables/credit_ledger_entries/credit-ledger-entries-metrics"},{"title":"Search credit ledger entries","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/credit-ledger-entries/search","href":"/api-reference/playtables/credit_ledger_entries/search-credit-ledger-entries"}]},{"group":"data_source_items","pages":[{"title":"Move data source duplicates","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/data-source-items/move","href":"/api-reference/playtables/data_source_items/move-data-source-duplicates"},{"title":"Search data source items","description":"Row-level drill-down behind an import funnel: one row per raw record a data source staged - the untouched payload plus its promotion outcome (status, status_reason, created_object_sid, duplicate_action). Scope data_source_sid + status for \"why didn't these rows make it\"; q searches the payload (requires data_source_sid); sid.eq resolves people.data_source_item_sid provenance; include data_source = the source; counts.groups.status = the funnel. Totals/metrics → data-sources tools.\n\nContract:\n- MCP tool `search_data_source_items`, registry package `mcp.playtables/data_source_items`, mount `playtables.sources`.\n- Operation `search`, response envelope `search`.\n- Flags: read only.","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/data-source-items/search","href":"/api-reference/playtables/data_source_items/search-data-source-items"}]},{"group":"data_sources","pages":[{"title":"Create data source","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/data-sources","href":"/api-reference/playtables/data_sources/create-data-source"},{"title":"Plan data source filters","description":"Turn a description of who to find into a wire-ready filter set without creating anything: the step before create_data_source when the user should see or edit what will be searched. Paid: the AI parse costs one credit per call. It reads the words into facets (location, industry, current and past company, school, seniority, job function, company headcount, titles as free text) and the platform pool resolves every id-bearing term; a term with no id lands in result.unresolved, never faked. Facets are ANDed and the values inside one facet ORed; there are no exclusion filters, so describe who to find, never who to leave out. A facet keeps at most 10 values: the first ten stay, the dropped terms are named in result.warnings.\n\nHand the answer to create_data_source as is: type and object_type from the result, name = suggested_name, payload = {filters, prompt: \u003cthe description>} (find_people adds payload.company_sids). create_data_source with payload.prompt alone plans the same way at its first collect step, so call this only when the plan must be seen first.\n\nRefusals: 422 on prompt when nothing usable was read (ai_parse_failed or ai_empty_filter: rephrase with roles, places or industries); a busy pool answers 503 service_unavailable (context.reason infrastructure_unavailable or search_in_flight) or 429 rate_limited (pool_rate_limited), each with context.retry_after: wait until then, or create the source with the prompt alone and let its collector plan at the pool's pace.\n\nContract:\n- MCP tool `plan_data_source_filters`, registry package `mcp.playtables/data_sources`, mount `playtables.sources`.\n- Operation `action`, response envelope `action`.\n- Flags: none.","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/data-sources/ai-plan","href":"/api-reference/playtables/data_sources/plan-data-source-filters"},{"title":"Suggest data source filter values","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/data-sources/filter-typeahead","href":"/api-reference/playtables/data_sources/suggest-data-source-filter-values"},{"title":"Data sources metrics","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/data-sources/metrics","href":"/api-reference/playtables/data_sources/data-sources-metrics"},{"title":"Preview post engagement","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/data-sources/post-engagement-preview","href":"/api-reference/playtables/data_sources/preview-post-engagement"},{"title":"Search data sources","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/data-sources/search","href":"/api-reference/playtables/data_sources/search-data-sources"},{"title":"Create data source upload URL","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/data-sources/upload-url","href":"/api-reference/playtables/data_sources/create-data-source-upload-url"},{"title":"Get data source","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml get /api/data-sources/{sid}","href":"/api-reference/playtables/data_sources/get-data-source"},{"title":"Delete data source","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml delete /api/data-sources/{sid}","href":"/api-reference/playtables/data_sources/delete-data-source"},{"title":"Update data source","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml patch /api/data-sources/{sid}","href":"/api-reference/playtables/data_sources/update-data-source"},{"title":"Add companies to data source","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/data-sources/{sid}/add-companies","href":"/api-reference/playtables/data_sources/add-companies-to-data-source"},{"title":"Import data source","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/data-sources/{sid}/import","href":"/api-reference/playtables/data_sources/import-data-source"},{"title":"Rotate data source ingest key","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/data-sources/{sid}/rotate-ingest-key","href":"/api-reference/playtables/data_sources/rotate-data-source-ingest-key"}]},{"group":"notes","pages":[{"title":"Create note","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/notes","href":"/api-reference/playtables/notes/create-note"},{"title":"Search notes","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/notes/search","href":"/api-reference/playtables/notes/search-notes"},{"title":"Delete note","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml delete /api/notes/{sid}","href":"/api-reference/playtables/notes/delete-note"},{"title":"Update note","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml patch /api/notes/{sid}","href":"/api-reference/playtables/notes/update-note"}]},{"group":"people","pages":[{"title":"Create person","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/people","href":"/api-reference/playtables/people/create-person"},{"title":"People metrics","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/people/metrics","href":"/api-reference/playtables/people/people-metrics"},{"title":"Read LinkedIn person","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/people/read-linkedin","href":"/api-reference/playtables/people/read-linkedin-person"},{"title":"Search people","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/people/search","href":"/api-reference/playtables/people/search-people"},{"title":"Suggest person filter values","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/people/suggest","href":"/api-reference/playtables/people/suggest-person-filter-values"},{"title":"Get person","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml get /api/people/{sid}","href":"/api-reference/playtables/people/get-person"},{"title":"Delete person","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml delete /api/people/{sid}","href":"/api-reference/playtables/people/delete-person"},{"title":"Update person","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml patch /api/people/{sid}","href":"/api-reference/playtables/people/update-person"},{"title":"Make person primary","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/people/{sid}/make-primary","href":"/api-reference/playtables/people/make-person-primary"}]},{"group":"pipeline_stages","pages":[{"title":"Create pipeline stage","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/pipeline-stages","href":"/api-reference/playtables/pipeline_stages/create-pipeline-stage"},{"title":"Pipeline stages metrics","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/pipeline-stages/metrics","href":"/api-reference/playtables/pipeline_stages/pipeline-stages-metrics"},{"title":"Reset company stage derivation","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/pipeline-stages/reset-derivation","href":"/api-reference/playtables/pipeline_stages/reset-company-stage-derivation"},{"title":"Search pipeline stages","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/pipeline-stages/search","href":"/api-reference/playtables/pipeline_stages/search-pipeline-stages"},{"title":"Delete pipeline stage","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml delete /api/pipeline-stages/{sid}","href":"/api-reference/playtables/pipeline_stages/delete-pipeline-stage"},{"title":"Update pipeline stage","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml patch /api/pipeline-stages/{sid}","href":"/api-reference/playtables/pipeline_stages/update-pipeline-stage"},{"title":"Move objects into a pipeline stage","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/pipeline-stages/{sid}/move","href":"/api-reference/playtables/pipeline_stages/move-objects-into-a-pipeline-stage"}]},{"group":"plays","pages":[{"title":"Create play","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/plays","href":"/api-reference/playtables/plays/create-play"},{"title":"List play catalog","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/plays/catalog","href":"/api-reference/playtables/plays/list-play-catalog"},{"title":"Search plays","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/plays/search","href":"/api-reference/playtables/plays/search-plays"},{"title":"Delete play","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml delete /api/plays/{sid}","href":"/api-reference/playtables/plays/delete-play"},{"title":"Update play","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml patch /api/plays/{sid}","href":"/api-reference/playtables/plays/update-play"},{"title":"Estimate play","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/plays/{sid}/estimate","href":"/api-reference/playtables/plays/estimate-play"},{"title":"Run play","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/plays/{sid}/run","href":"/api-reference/playtables/plays/run-play"}]},{"group":"playtable_field_values","pages":[{"title":"Search playtable field values","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-field-values/search","href":"/api-reference/playtables/playtable_field_values/search-playtable-field-values"},{"title":"Write playtable field value","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-field-values/write","href":"/api-reference/playtables/playtable_field_values/write-playtable-field-value"},{"title":"Get playtable field value","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml get /api/playtable-field-values/{sid}","href":"/api-reference/playtables/playtable_field_values/get-playtable-field-value"},{"title":"Update playtable field value","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml patch /api/playtable-field-values/{sid}","href":"/api-reference/playtables/playtable_field_values/update-playtable-field-value"},{"title":"Reset playtable field value","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-field-values/{sid}/reset","href":"/api-reference/playtables/playtable_field_values/reset-playtable-field-value"}]},{"group":"playtable_fields","pages":[{"title":"Create playtable field","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-fields","href":"/api-reference/playtables/playtable_fields/create-playtable-field"},{"title":"Estimate playtable field AI cost","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-fields/estimate-ai-cost","href":"/api-reference/playtables/playtable_fields/estimate-playtable-field-ai-cost"},{"title":"Estimate playtable field backfill","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-fields/estimate-backfill","href":"/api-reference/playtables/playtable_fields/estimate-playtable-field-backfill"},{"title":"Generate playtable field condition","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-fields/generate-condition","href":"/api-reference/playtables/playtable_fields/generate-playtable-field-condition"},{"title":"Preview playtable field condition","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-fields/preview-condition","href":"/api-reference/playtables/playtable_fields/preview-playtable-field-condition"},{"title":"Preview playtable field run","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-fields/preview-run","href":"/api-reference/playtables/playtable_fields/preview-playtable-field-run"},{"title":"Search playtable fields","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-fields/search","href":"/api-reference/playtables/playtable_fields/search-playtable-fields"},{"title":"Get playtable field","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml get /api/playtable-fields/{sid}","href":"/api-reference/playtables/playtable_fields/get-playtable-field"},{"title":"Delete playtable field","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml delete /api/playtable-fields/{sid}","href":"/api-reference/playtables/playtable_fields/delete-playtable-field"},{"title":"Update playtable field","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml patch /api/playtable-fields/{sid}","href":"/api-reference/playtables/playtable_fields/update-playtable-field"},{"title":"Fill playtable field again","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-fields/{sid}/backfill","href":"/api-reference/playtables/playtable_fields/fill-playtable-field-again"},{"title":"Stop the runs on a playtable field","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-fields/{sid}/cancel-runs","href":"/api-reference/playtables/playtable_fields/stop-the-runs-on-a-playtable-field"},{"title":"Estimate semantic index cost","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-fields/{sid}/estimate-semantic-index","href":"/api-reference/playtables/playtable_fields/estimate-semantic-index-cost"}]},{"group":"playtable_runs","pages":[{"title":"Create playtable run","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-runs","href":"/api-reference/playtables/playtable_runs/create-playtable-run"},{"title":"Estimate playtable run cost","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-runs/estimate","href":"/api-reference/playtables/playtable_runs/estimate-playtable-run-cost"},{"title":"Search playtable runs","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-runs/search","href":"/api-reference/playtables/playtable_runs/search-playtable-runs"},{"title":"Get playtable run","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml get /api/playtable-runs/{sid}","href":"/api-reference/playtables/playtable_runs/get-playtable-run"},{"title":"Cancel playtable run","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-runs/{sid}/cancel","href":"/api-reference/playtables/playtable_runs/cancel-playtable-run"}]},{"group":"playtable_views","pages":[{"title":"Create playtable view","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-views","href":"/api-reference/playtables/playtable_views/create-playtable-view"},{"title":"Search playtable views","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtable-views/search","href":"/api-reference/playtables/playtable_views/search-playtable-views"},{"title":"Get playtable view","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml get /api/playtable-views/{sid}","href":"/api-reference/playtables/playtable_views/get-playtable-view"},{"title":"Delete playtable view","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml delete /api/playtable-views/{sid}","href":"/api-reference/playtables/playtable_views/delete-playtable-view"},{"title":"Update playtable view","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml patch /api/playtable-views/{sid}","href":"/api-reference/playtables/playtable_views/update-playtable-view"}]},{"group":"playtables","pages":[{"title":"Create playtable","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtables","href":"/api-reference/playtables/playtables/create-playtable"},{"title":"Playtables metrics","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtables/metrics","href":"/api-reference/playtables/playtables/playtables-metrics"},{"title":"Search playtables","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtables/search","href":"/api-reference/playtables/playtables/search-playtables"},{"title":"Workspace performance","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtables/workspace-performance","href":"/api-reference/playtables/playtables/workspace-performance"},{"title":"Get playtable","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml get /api/playtables/{sid}","href":"/api-reference/playtables/playtables/get-playtable"},{"title":"Delete playtable","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml delete /api/playtables/{sid}","href":"/api-reference/playtables/playtables/delete-playtable"},{"title":"Update playtable","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml patch /api/playtables/{sid}","href":"/api-reference/playtables/playtables/update-playtable"},{"title":"Stop the runs of a playtable","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtables/{sid}/cancel-runs","href":"/api-reference/playtables/playtables/stop-the-runs-of-a-playtable"},{"title":"Preview playtable delete","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtables/{sid}/delete-preview","href":"/api-reference/playtables/playtables/preview-playtable-delete"},{"title":"Playtable performance","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/playtables/{sid}/performance","href":"/api-reference/playtables/playtables/playtable-performance"}]},{"group":"result_pages","pages":[{"title":"Search result pages","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/result-pages/search","href":"/api-reference/playtables/result_pages/search-result-pages"},{"title":"Delete result page","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml delete /api/result-pages/{sid}","href":"/api-reference/playtables/result_pages/delete-result-page"}]},{"group":"sender_profiles","pages":[{"title":"Sender profile stats","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/sender-profiles/stats","href":"/api-reference/playtables/sender_profiles/sender-profile-stats"},{"title":"Sender profile performance","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/sender-profiles/{sid}/performance","href":"/api-reference/playtables/sender_profiles/sender-profile-performance"}]},{"group":"stoplist_entries","pages":[{"title":"Create stoplist entries","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/stoplist-entries","href":"/api-reference/playtables/stoplist_entries/create-stoplist-entries"},{"title":"Search stoplist entries","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/stoplist-entries/search","href":"/api-reference/playtables/stoplist_entries/search-stoplist-entries"},{"title":"Delete stoplist entry","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml delete /api/stoplist-entries/{sid}","href":"/api-reference/playtables/stoplist_entries/delete-stoplist-entry"}]},{"group":"tags","pages":[{"title":"Create tag","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/tags","href":"/api-reference/playtables/tags/create-tag"},{"title":"Search tags","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/tags/search","href":"/api-reference/playtables/tags/search-tags"},{"title":"Delete tag","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml delete /api/tags/{sid}","href":"/api-reference/playtables/tags/delete-tag"},{"title":"Update tag","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml patch /api/tags/{sid}","href":"/api-reference/playtables/tags/update-tag"}]},{"group":"workflow_attachments","pages":[{"title":"Search workflow attachments","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-attachments/search","href":"/api-reference/playtables/workflow_attachments/search-workflow-attachments"},{"title":"Create workflow attachment upload URL","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-attachments/upload-url","href":"/api-reference/playtables/workflow_attachments/create-workflow-attachment-upload-url"},{"title":"Delete workflow attachment","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml delete /api/workflow-attachments/{sid}","href":"/api-reference/playtables/workflow_attachments/delete-workflow-attachment"}]},{"group":"workflow_records","pages":[{"title":"Workflow records metrics","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-records/metrics","href":"/api-reference/playtables/workflow_records/workflow-records-metrics"},{"title":"Search workflow records","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-records/search","href":"/api-reference/playtables/workflow_records/search-workflow-records"},{"title":"Exit workflow record","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-records/{sid}/exit","href":"/api-reference/playtables/workflow_records/exit-workflow-record"},{"title":"Pause workflow record","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-records/{sid}/pause","href":"/api-reference/playtables/workflow_records/pause-workflow-record"},{"title":"Restart workflow record from top","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-records/{sid}/restart","href":"/api-reference/playtables/workflow_records/restart-workflow-record-from-top"},{"title":"Resume workflow record","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-records/{sid}/resume","href":"/api-reference/playtables/workflow_records/resume-workflow-record"}]},{"group":"workflow_sources","pages":[{"title":"Create workflow source","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-sources","href":"/api-reference/playtables/workflow_sources/create-workflow-source"},{"title":"Search workflow sources","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-sources/search","href":"/api-reference/playtables/workflow_sources/search-workflow-sources"},{"title":"Delete workflow source","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml delete /api/workflow-sources/{sid}","href":"/api-reference/playtables/workflow_sources/delete-workflow-source"},{"title":"Update workflow source","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml patch /api/workflow-sources/{sid}","href":"/api-reference/playtables/workflow_sources/update-workflow-source"},{"title":"Add people to workflow source","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-sources/{sid}/add-people","href":"/api-reference/playtables/workflow_sources/add-people-to-workflow-source"}]},{"group":"workflow_tasks","pages":[{"title":"Search workflow tasks","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-tasks/search","href":"/api-reference/playtables/workflow_tasks/search-workflow-tasks"},{"title":"Update workflow task","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml patch /api/workflow-tasks/{sid}","href":"/api-reference/playtables/workflow_tasks/update-workflow-task"},{"title":"Approve workflow task","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-tasks/{sid}/approve","href":"/api-reference/playtables/workflow_tasks/approve-workflow-task"},{"title":"Cancel workflow task","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-tasks/{sid}/cancel","href":"/api-reference/playtables/workflow_tasks/cancel-workflow-task"},{"title":"Complete workflow task","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-tasks/{sid}/complete","href":"/api-reference/playtables/workflow_tasks/complete-workflow-task"},{"title":"Retry workflow task","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-tasks/{sid}/retry","href":"/api-reference/playtables/workflow_tasks/retry-workflow-task"}]},{"group":"workflow_versions","pages":[{"title":"Search workflow versions","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflow-versions/search","href":"/api-reference/playtables/workflow_versions/search-workflow-versions"},{"title":"Get workflow version","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml get /api/workflow-versions/{sid}","href":"/api-reference/playtables/workflow_versions/get-workflow-version"}]},{"group":"workflows","pages":[{"title":"Create workflow","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflows","href":"/api-reference/playtables/workflows/create-workflow"},{"title":"Workflows metrics","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflows/metrics","href":"/api-reference/playtables/workflows/workflows-metrics"},{"title":"Search workflows","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflows/search","href":"/api-reference/playtables/workflows/search-workflows"},{"title":"Test an API call step","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflows/test-api-call","href":"/api-reference/playtables/workflows/test-an-api-call-step"},{"title":"Validate workflow","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflows/validate","href":"/api-reference/playtables/workflows/validate-workflow"},{"title":"Get workflow","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml get /api/workflows/{sid}","href":"/api-reference/playtables/workflows/get-workflow"},{"title":"Delete workflow","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml delete /api/workflows/{sid}","href":"/api-reference/playtables/workflows/delete-workflow"},{"title":"Update workflow","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml patch /api/workflows/{sid}","href":"/api-reference/playtables/workflows/update-workflow"},{"title":"Pause workflow","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflows/{sid}/pause","href":"/api-reference/playtables/workflows/pause-workflow"},{"title":"Publish workflow","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflows/{sid}/publish","href":"/api-reference/playtables/workflows/publish-workflow"},{"title":"Resume workflow","deprecated":null,"version":null,"openapi":"/api-reference/playtables/openapi.yaml post /api/workflows/{sid}/resume","href":"/api-reference/playtables/workflows/resume-workflow"}]}]},{"group":"Unibox API","pages":[{"group":"agent_answers","pages":[{"title":"Add a Knowledge answer","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-answers","href":"/api-reference/unibox/agent_answers/add-a-knowledge-answer"},{"title":"Ask the Knowledge answers","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-answers/ask","href":"/api-reference/unibox/agent_answers/ask-the-knowledge-answers"},{"title":"Search Knowledge answers","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-answers/search","href":"/api-reference/unibox/agent_answers/search-knowledge-answers"},{"title":"Delete a Knowledge answer","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml delete /api/agent-answers/{sid}","href":"/api-reference/unibox/agent_answers/delete-a-knowledge-answer"},{"title":"Update a Knowledge answer","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/agent-answers/{sid}","href":"/api-reference/unibox/agent_answers/update-a-knowledge-answer"}]},{"group":"agent_conversation_uploads","pages":[{"title":"Upload conversations","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-conversation-uploads","href":"/api-reference/unibox/agent_conversation_uploads/upload-conversations"},{"title":"Get a conversations upload","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml get /api/agent-conversation-uploads/{sid}","href":"/api-reference/unibox/agent_conversation_uploads/get-a-conversations-upload"},{"title":"Keep dialogues from an upload","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-conversation-uploads/{sid}/apply","href":"/api-reference/unibox/agent_conversation_uploads/keep-dialogues-from-an-upload"},{"title":"Discard a conversations upload","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-conversation-uploads/{sid}/discard","href":"/api-reference/unibox/agent_conversation_uploads/discard-a-conversations-upload"}]},{"group":"agent_examples","pages":[{"title":"Add to the golden set","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-examples","href":"/api-reference/unibox/agent_examples/add-to-the-golden-set"},{"title":"Forget golden set rows","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-examples/forget","href":"/api-reference/unibox/agent_examples/forget-golden-set-rows"},{"title":"Search the golden set","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-examples/search","href":"/api-reference/unibox/agent_examples/search-the-golden-set"},{"title":"Get golden set row","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml get /api/agent-examples/{sid}","href":"/api-reference/unibox/agent_examples/get-golden-set-row"},{"title":"Forget golden set row","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml delete /api/agent-examples/{sid}","href":"/api-reference/unibox/agent_examples/forget-golden-set-row"},{"title":"Update golden set row","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/agent-examples/{sid}","href":"/api-reference/unibox/agent_examples/update-golden-set-row"}]},{"group":"agent_hints","pages":[{"title":"Search the hints","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-hints/search","href":"/api-reference/unibox/agent_hints/search-the-hints"},{"title":"Dismiss a hint","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-hints/{sid}/dismiss","href":"/api-reference/unibox/agent_hints/dismiss-a-hint"},{"title":"Resolve a hint","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-hints/{sid}/resolve","href":"/api-reference/unibox/agent_hints/resolve-a-hint"}]},{"group":"agent_plans","pages":[{"title":"Create agent plan","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-plans","href":"/api-reference/unibox/agent_plans/create-agent-plan"},{"title":"Draft follow-ups","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-plans/draft-followups","href":"/api-reference/unibox/agent_plans/draft-follow-ups"},{"title":"Schedule follow-ups","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-plans/schedule-followups","href":"/api-reference/unibox/agent_plans/schedule-follow-ups"},{"title":"Search agent plans","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-plans/search","href":"/api-reference/unibox/agent_plans/search-agent-plans"},{"title":"Update agent plan","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/agent-plans/{sid}","href":"/api-reference/unibox/agent_plans/update-agent-plan"},{"title":"Steer agent plan","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-plans/{sid}/steer","href":"/api-reference/unibox/agent_plans/steer-agent-plan"}]},{"group":"agent_runs","pages":[{"title":"Search agent runs","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-runs/search","href":"/api-reference/unibox/agent_runs/search-agent-runs"},{"title":"Get agent run","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml get /api/agent-runs/{sid}","href":"/api-reference/unibox/agent_runs/get-agent-run"},{"title":"Add agent reply fix","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-runs/{sid}/apply-fix","href":"/api-reference/unibox/agent_runs/add-agent-reply-fix"},{"title":"Rewrite agent reply as a test","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-runs/{sid}/rewrite","href":"/api-reference/unibox/agent_runs/rewrite-agent-reply-as-a-test"},{"title":"Route agent reply fix","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-runs/{sid}/route-fix","href":"/api-reference/unibox/agent_runs/route-agent-reply-fix"}]},{"group":"agent_scenarios","pages":[{"title":"Create agent scenario","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-scenarios","href":"/api-reference/unibox/agent_scenarios/create-agent-scenario"},{"title":"Compose agent scenario","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-scenarios/compose","href":"/api-reference/unibox/agent_scenarios/compose-agent-scenario"},{"title":"Search agent scenarios","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-scenarios/search","href":"/api-reference/unibox/agent_scenarios/search-agent-scenarios"},{"title":"Get agent scenario","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml get /api/agent-scenarios/{sid}","href":"/api-reference/unibox/agent_scenarios/get-agent-scenario"},{"title":"Delete agent scenario","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml delete /api/agent-scenarios/{sid}","href":"/api-reference/unibox/agent_scenarios/delete-agent-scenario"},{"title":"Update agent scenario","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/agent-scenarios/{sid}","href":"/api-reference/unibox/agent_scenarios/update-agent-scenario"},{"title":"Reset agent scenario","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-scenarios/{sid}/reset","href":"/api-reference/unibox/agent_scenarios/reset-agent-scenario"}]},{"group":"agent_source_parses","pages":[{"title":"Get a parse record","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml get /api/agent-source-parses/{sid}","href":"/api-reference/unibox/agent_source_parses/get-a-parse-record"},{"title":"Take the answers found into Knowledge","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-source-parses/{sid}/apply","href":"/api-reference/unibox/agent_source_parses/take-the-answers-found-into-knowledge"},{"title":"Discard a parse","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-source-parses/{sid}/discard","href":"/api-reference/unibox/agent_source_parses/discard-a-parse"}]},{"group":"agent_sources","pages":[{"title":"Add a website to the Knowledge","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-sources","href":"/api-reference/unibox/agent_sources/add-a-website-to-the-knowledge"},{"title":"Search Knowledge documents","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-sources/search","href":"/api-reference/unibox/agent_sources/search-knowledge-documents"},{"title":"Get Knowledge document","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml get /api/agent-sources/{sid}","href":"/api-reference/unibox/agent_sources/get-knowledge-document"},{"title":"Delete Knowledge document","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml delete /api/agent-sources/{sid}","href":"/api-reference/unibox/agent_sources/delete-knowledge-document"},{"title":"Update Knowledge document","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/agent-sources/{sid}","href":"/api-reference/unibox/agent_sources/update-knowledge-document"},{"title":"Get a Knowledge file link","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml get /api/agent-sources/{sid}/file-link","href":"/api-reference/unibox/agent_sources/get-a-knowledge-file-link"},{"title":"Parse a document into answers","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-sources/{sid}/parse","href":"/api-reference/unibox/agent_sources/parse-a-document-into-answers"},{"title":"Read a document again","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-sources/{sid}/read-again","href":"/api-reference/unibox/agent_sources/read-a-document-again"},{"title":"Suggest how to read a document","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-sources/{sid}/suggest-instruction","href":"/api-reference/unibox/agent_sources/suggest-how-to-read-a-document"}]},{"group":"agent_tests","pages":[{"title":"Test the AI SDR on a reply","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-tests","href":"/api-reference/unibox/agent_tests/test-the-ai-sdr-on-a-reply"},{"title":"Search tests","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agent-tests/search","href":"/api-reference/unibox/agent_tests/search-tests"},{"title":"Get a test","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml get /api/agent-tests/{sid}","href":"/api-reference/unibox/agent_tests/get-a-test"}]},{"group":"agents","pages":[{"title":"Create agent","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agents","href":"/api-reference/unibox/agents/create-agent"},{"title":"Search agents","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agents/search","href":"/api-reference/unibox/agents/search-agents"},{"title":"Probe website","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agents/website-probe","href":"/api-reference/unibox/agents/probe-website"},{"title":"Read website text","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agents/website-text","href":"/api-reference/unibox/agents/read-website-text"},{"title":"Get agent","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml get /api/agents/{sid}","href":"/api-reference/unibox/agents/get-agent"},{"title":"Delete agent","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml delete /api/agents/{sid}","href":"/api-reference/unibox/agents/delete-agent"},{"title":"Update agent","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/agents/{sid}","href":"/api-reference/unibox/agents/update-agent"},{"title":"Compose agent brief","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agents/{sid}/compose-brief","href":"/api-reference/unibox/agents/compose-agent-brief"},{"title":"Update agent hosts","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/agents/{sid}/hosts","href":"/api-reference/unibox/agents/update-agent-hosts"},{"title":"Get agent overview","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml get /api/agents/{sid}/overview","href":"/api-reference/unibox/agents/get-agent-overview"},{"title":"Read agent website","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/agents/{sid}/read-website","href":"/api-reference/unibox/agents/read-agent-website"},{"title":"Get agent rules","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml get /api/agents/{sid}/rules","href":"/api-reference/unibox/agents/get-agent-rules"},{"title":"Update agent rules","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/agents/{sid}/rules","href":"/api-reference/unibox/agents/update-agent-rules"},{"title":"Set a voice line","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/agents/{sid}/voice","href":"/api-reference/unibox/agents/set-a-voice-line"}]},{"group":"conversation_events","pages":[{"title":"Search conversation events","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/conversation-events/search","href":"/api-reference/unibox/conversation_events/search-conversation-events"}]},{"group":"conversations","pages":[{"title":"Resolve conversation counterpart","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/conversations/resolve-counterpart","href":"/api-reference/unibox/conversations/resolve-conversation-counterpart"},{"title":"Search conversations","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/conversations/search","href":"/api-reference/unibox/conversations/search-conversations"},{"title":"Get conversation","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml get /api/conversations/{sid}","href":"/api-reference/unibox/conversations/get-conversation"},{"title":"Update conversation","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/conversations/{sid}","href":"/api-reference/unibox/conversations/update-conversation"},{"title":"Add participants to a group conversation","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/conversations/{sid}/add-participants","href":"/api-reference/unibox/conversations/add-participants-to-a-group-conversation"},{"title":"Hand a conversation over to a teammate","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/conversations/{sid}/hand-over","href":"/api-reference/unibox/conversations/hand-a-conversation-over-to-a-teammate"},{"title":"Link conversation person","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/conversations/{sid}/link-person","href":"/api-reference/unibox/conversations/link-conversation-person"},{"title":"Get conversation LLM context","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml get /api/conversations/{sid}/llm-context","href":"/api-reference/unibox/conversations/get-conversation-llm-context"},{"title":"Merge conversation","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/conversations/{sid}/merge","href":"/api-reference/unibox/conversations/merge-conversation"},{"title":"Ask the AI SDR to try again on a conversation","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/conversations/{sid}/retry-agent","href":"/api-reference/unibox/conversations/ask-the-ai-sdr-to-try-again-on-a-conversation"},{"title":"Return conversation to orchestration","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/conversations/{sid}/return-to-orchestration","href":"/api-reference/unibox/conversations/return-conversation-to-orchestration"},{"title":"Stoplist conversation counterpart","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/conversations/{sid}/stoplist","href":"/api-reference/unibox/conversations/stoplist-conversation-counterpart"},{"title":"Unlink conversation person","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/conversations/{sid}/unlink-person","href":"/api-reference/unibox/conversations/unlink-conversation-person"}]},{"group":"messages","pages":[{"title":"Approve message drafts","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/messages/approve","href":"/api-reference/unibox/messages/approve-message-drafts"},{"title":"Cancel messages that have not gone out","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/messages/cancel","href":"/api-reference/unibox/messages/cancel-messages-that-have-not-gone-out"},{"title":"Dismiss message drafts","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/messages/dismiss","href":"/api-reference/unibox/messages/dismiss-message-drafts"},{"title":"Send failed messages again","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/messages/retry","href":"/api-reference/unibox/messages/send-failed-messages-again"},{"title":"Search messages","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/messages/search","href":"/api-reference/unibox/messages/search-messages"},{"title":"Send message","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/messages/send","href":"/api-reference/unibox/messages/send-message"},{"title":"Update message draft","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/messages/{sid}","href":"/api-reference/unibox/messages/update-message-draft"},{"title":"Get a link to a message file","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml get /api/messages/{sid}/attachment-link","href":"/api-reference/unibox/messages/get-a-link-to-a-message-file"},{"title":"Delete a LinkedIn message for everyone","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/messages/{sid}/delete-on-linkedin","href":"/api-reference/unibox/messages/delete-a-linkedin-message-for-everyone"},{"title":"React to message","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/messages/{sid}/react","href":"/api-reference/unibox/messages/react-to-message"},{"title":"Regenerate message draft","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/messages/{sid}/regenerate","href":"/api-reference/unibox/messages/regenerate-message-draft"}]},{"group":"sender_profiles","pages":[{"title":"Create sender profile","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles","href":"/api-reference/unibox/sender_profiles/create-sender-profile"},{"title":"List available channel accounts","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/available-accounts","href":"/api-reference/unibox/sender_profiles/list-available-channel-accounts"},{"title":"Check a LinkedIn proxy","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/linkedin/check-proxy","href":"/api-reference/unibox/sender_profiles/check-a-linkedin-proxy"},{"title":"List LinkedIn proxy countries","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/linkedin/proxy-countries","href":"/api-reference/unibox/sender_profiles/list-linkedin-proxy-countries"},{"title":"Search sender profiles","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/search","href":"/api-reference/unibox/sender_profiles/search-sender-profiles"},{"title":"Start a mailbox connect for a new sender profile","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/start-email-connect","href":"/api-reference/unibox/sender_profiles/start-a-mailbox-connect-for-a-new-sender-profile"},{"title":"Start a LinkedIn connect for a new sender profile","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/start-linkedin-connect","href":"/api-reference/unibox/sender_profiles/start-a-linkedin-connect-for-a-new-sender-profile"},{"title":"Delete sender profile","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml delete /api/sender-profiles/{sid}","href":"/api-reference/unibox/sender_profiles/delete-sender-profile"},{"title":"Update sender profile","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/sender-profiles/{sid}","href":"/api-reference/unibox/sender_profiles/update-sender-profile"},{"title":"Read sender profile limits","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/limits","href":"/api-reference/unibox/sender_profiles/read-sender-profile-limits"},{"title":"Set sender profile smart limits","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/limits/linkedin/smart-limits","href":"/api-reference/unibox/sender_profiles/set-sender-profile-smart-limits"},{"title":"Update a sender profile LinkedIn limit","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/sender-profiles/{sid}/limits/linkedin/{smartLimitSid}","href":"/api-reference/unibox/sender_profiles/update-a-sender-profile-linkedin-limit"},{"title":"Attach a LinkedIn account to a sender profile","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/linkedin/attach","href":"/api-reference/unibox/sender_profiles/attach-a-linkedin-account-to-a-sender-profile"},{"title":"Check a sender profile's LinkedIn connect","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/linkedin/connect-status","href":"/api-reference/unibox/sender_profiles/check-a-sender-profiles-linkedin-connect"},{"title":"Detach the LinkedIn account from a sender profile","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/linkedin/detach","href":"/api-reference/unibox/sender_profiles/detach-the-linkedin-account-from-a-sender-profile"},{"title":"Read sender profile LinkedIn limit history","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/linkedin/limit-history","href":"/api-reference/unibox/sender_profiles/read-sender-profile-linkedin-limit-history"},{"title":"Start a LinkedIn connect for a sender profile","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/linkedin/start-connect","href":"/api-reference/unibox/sender_profiles/start-a-linkedin-connect-for-a-sender-profile"},{"title":"Read sender profile LinkedIn sync settings","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/linkedin/sync","href":"/api-reference/unibox/sender_profiles/read-sender-profile-linkedin-sync-settings"},{"title":"Update sender profile LinkedIn sync settings","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/sender-profiles/{sid}/linkedin/sync","href":"/api-reference/unibox/sender_profiles/update-sender-profile-linkedin-sync-settings"},{"title":"Attach a mailbox to a sender profile","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/mailboxes/attach","href":"/api-reference/unibox/sender_profiles/attach-a-mailbox-to-a-sender-profile"},{"title":"Connect an IMAP mailbox to a sender profile","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/mailboxes/connect-imap","href":"/api-reference/unibox/sender_profiles/connect-an-imap-mailbox-to-a-sender-profile"},{"title":"Start a mailbox connect for a sender profile","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/mailboxes/start-connect","href":"/api-reference/unibox/sender_profiles/start-a-mailbox-connect-for-a-sender-profile"},{"title":"Update a sender profile mailbox","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/sender-profiles/{sid}/mailboxes/{emailAccountSid}","href":"/api-reference/unibox/sender_profiles/update-a-sender-profile-mailbox"},{"title":"Detach a mailbox from a sender profile","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/mailboxes/{emailAccountSid}/detach","href":"/api-reference/unibox/sender_profiles/detach-a-mailbox-from-a-sender-profile"},{"title":"Disconnect a sender profile mailbox","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/mailboxes/{emailAccountSid}/disconnect","href":"/api-reference/unibox/sender_profiles/disconnect-a-sender-profile-mailbox"},{"title":"Pause sending from a sender profile mailbox","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/mailboxes/{emailAccountSid}/pause-sending","href":"/api-reference/unibox/sender_profiles/pause-sending-from-a-sender-profile-mailbox"},{"title":"Reconnect a sender profile mailbox","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/mailboxes/{emailAccountSid}/reconnect","href":"/api-reference/unibox/sender_profiles/reconnect-a-sender-profile-mailbox"},{"title":"Resume sending from a sender profile mailbox","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/mailboxes/{emailAccountSid}/resume-sending","href":"/api-reference/unibox/sender_profiles/resume-sending-from-a-sender-profile-mailbox"},{"title":"Sync a sender profile mailbox","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/mailboxes/{emailAccountSid}/sync","href":"/api-reference/unibox/sender_profiles/sync-a-sender-profile-mailbox"},{"title":"List a sender profile mailbox tracking domains","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/mailboxes/{emailAccountSid}/tracking-domains","href":"/api-reference/unibox/sender_profiles/list-a-sender-profile-mailbox-tracking-domains"},{"title":"Sync sender profile history","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/sender-profiles/{sid}/sync-history","href":"/api-reference/unibox/sender_profiles/sync-sender-profile-history"}]},{"group":"tasks","pages":[{"title":"Create task","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/tasks","href":"/api-reference/unibox/tasks/create-task"},{"title":"Search tasks","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/tasks/search","href":"/api-reference/unibox/tasks/search-tasks"},{"title":"Update task","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml patch /api/tasks/{sid}","href":"/api-reference/unibox/tasks/update-task"}]},{"group":"timeline","pages":[{"title":"Search timeline","deprecated":null,"version":null,"openapi":"/api-reference/unibox/openapi.yaml post /api/timeline/search","href":"/api-reference/unibox/timeline/search-timeline"}]}]},{"group":"Signals API","pages":[{"group":"profile_view_sightings","pages":[{"title":"Search profile view sightings","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/profile-view-sightings/search","href":"/api-reference/signals/profile_view_sightings/search-profile-view-sightings"},{"title":"Get profile view sighting","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml get /api/profile-view-sightings/{sid}","href":"/api-reference/signals/profile_view_sightings/get-profile-view-sighting"}]},{"group":"signal_preferences","pages":[{"title":"Get signal preferences","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml get /api/signal-preferences","href":"/api-reference/signals/signal_preferences/get-signal-preferences"},{"title":"Update signal preferences","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml patch /api/signal-preferences","href":"/api-reference/signals/signal_preferences/update-signal-preferences"},{"title":"Mark signals seen","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/signal-preferences/mark-seen","href":"/api-reference/signals/signal_preferences/mark-signals-seen"}]},{"group":"signal_settings","pages":[{"title":"Get signal settings","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml get /api/signal-settings","href":"/api-reference/signals/signal_settings/get-signal-settings"},{"title":"Update signal settings","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml patch /api/signal-settings","href":"/api-reference/signals/signal_settings/update-signal-settings"}]},{"group":"website_key_pages","pages":[{"title":"Create website key page","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/website-key-pages","href":"/api-reference/signals/website_key_pages/create-website-key-page"},{"title":"Search website key pages","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/website-key-pages/search","href":"/api-reference/signals/website_key_pages/search-website-key-pages"},{"title":"Delete website key page","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml delete /api/website-key-pages/{sid}","href":"/api-reference/signals/website_key_pages/delete-website-key-page"},{"title":"Update website key page","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml patch /api/website-key-pages/{sid}","href":"/api-reference/signals/website_key_pages/update-website-key-page"}]},{"group":"website_session_owners","pages":[{"title":"Search website session owners","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/website-session-owners/search","href":"/api-reference/signals/website_session_owners/search-website-session-owners"}]},{"group":"website_sessions","pages":[{"title":"Search website sessions","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/website-sessions/search","href":"/api-reference/signals/website_sessions/search-website-sessions"},{"title":"Get website session","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml get /api/website-sessions/{sid}","href":"/api-reference/signals/website_sessions/get-website-session"}]},{"group":"website_sites","pages":[{"title":"Create website site","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/website-sites","href":"/api-reference/signals/website_sites/create-website-site"},{"title":"Search website sites","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/website-sites/search","href":"/api-reference/signals/website_sites/search-website-sites"},{"title":"Get website site","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml get /api/website-sites/{sid}","href":"/api-reference/signals/website_sites/get-website-site"},{"title":"Delete website site","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml delete /api/website-sites/{sid}","href":"/api-reference/signals/website_sites/delete-website-site"},{"title":"Update website site","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml patch /api/website-sites/{sid}","href":"/api-reference/signals/website_sites/update-website-site"},{"title":"Rotate website site key","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/website-sites/{sid}/rotate-key","href":"/api-reference/signals/website_sites/rotate-website-site-key"},{"title":"Verify website site","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/website-sites/{sid}/verify","href":"/api-reference/signals/website_sites/verify-website-site"}]},{"group":"website_tracked_events","pages":[{"title":"Create website tracked event","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/website-tracked-events","href":"/api-reference/signals/website_tracked_events/create-website-tracked-event"},{"title":"Search website tracked events","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/website-tracked-events/search","href":"/api-reference/signals/website_tracked_events/search-website-tracked-events"},{"title":"Delete website tracked event","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml delete /api/website-tracked-events/{sid}","href":"/api-reference/signals/website_tracked_events/delete-website-tracked-event"},{"title":"Update website tracked event","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml patch /api/website-tracked-events/{sid}","href":"/api-reference/signals/website_tracked_events/update-website-tracked-event"}]},{"group":"website_visitors","pages":[{"title":"Identify website visitor by email","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/website-visitors/identify","href":"/api-reference/signals/website_visitors/identify-website-visitor-by-email"},{"title":"Search website visitors","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/website-visitors/search","href":"/api-reference/signals/website_visitors/search-website-visitors"},{"title":"Get website visitor","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml get /api/website-visitors/{sid}","href":"/api-reference/signals/website_visitors/get-website-visitor"},{"title":"Identify website visitor","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/website-visitors/{sid}/identify","href":"/api-reference/signals/website_visitors/identify-website-visitor"},{"title":"Unlink website visitor","deprecated":null,"version":null,"openapi":"/api-reference/signals/openapi.yaml post /api/website-visitors/{sid}/unlink","href":"/api-reference/signals/website_visitors/unlink-website-visitor"}]}]},{"group":"Integrations API","pages":[{"group":"custom_tools","pages":[{"title":"Create custom tool","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/custom-tools","href":"/api-reference/integrations/custom_tools/create-custom-tool"},{"title":"Search custom tools","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/custom-tools/search","href":"/api-reference/integrations/custom_tools/search-custom-tools"},{"title":"Delete custom tool","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml delete /api/custom-tools/{sid}","href":"/api-reference/integrations/custom_tools/delete-custom-tool"},{"title":"Update custom tool","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml patch /api/custom-tools/{sid}","href":"/api-reference/integrations/custom_tools/update-custom-tool"},{"title":"Test custom tool","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/custom-tools/{sid}/test","href":"/api-reference/integrations/custom_tools/test-custom-tool"}]},{"group":"provider_calls","pages":[{"title":"Provider calls metrics","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/provider-calls/metrics","href":"/api-reference/integrations/provider_calls/provider-calls-metrics"},{"title":"Search provider calls","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/provider-calls/search","href":"/api-reference/integrations/provider_calls/search-provider-calls"},{"title":"Get provider call","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml get /api/provider-calls/{sid}","href":"/api-reference/integrations/provider_calls/get-provider-call"},{"title":"List provider catalog","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml get /api/provider-catalog","href":"/api-reference/integrations/provider_calls/list-provider-catalog"}]},{"group":"provider_connections","pages":[{"title":"Create provider connection","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/provider-connections","href":"/api-reference/integrations/provider_connections/create-provider-connection"},{"title":"Start provider OAuth connect","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/provider-connections/oauth/authorize","href":"/api-reference/integrations/provider_connections/start-provider-oauth-connect"},{"title":"Complete provider OAuth connect","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/provider-connections/oauth/complete","href":"/api-reference/integrations/provider_connections/complete-provider-oauth-connect"},{"title":"Search provider connections","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/provider-connections/search","href":"/api-reference/integrations/provider_connections/search-provider-connections"},{"title":"Delete provider connection","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml delete /api/provider-connections/{sid}","href":"/api-reference/integrations/provider_connections/delete-provider-connection"},{"title":"Update provider connection","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml patch /api/provider-connections/{sid}","href":"/api-reference/integrations/provider_connections/update-provider-connection"},{"title":"Test provider connection","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/provider-connections/{sid}/test","href":"/api-reference/integrations/provider_connections/test-provider-connection"}]},{"group":"webhook_logs","pages":[{"title":"Webhook logs metrics","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/webhook-logs/metrics","href":"/api-reference/integrations/webhook_logs/webhook-logs-metrics"},{"title":"Search webhook logs","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/webhook-logs/search","href":"/api-reference/integrations/webhook_logs/search-webhook-logs"},{"title":"Cancel webhook delivery","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/webhook-logs/{sid}/cancel","href":"/api-reference/integrations/webhook_logs/cancel-webhook-delivery"},{"title":"Retry webhook delivery","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/webhook-logs/{sid}/retry","href":"/api-reference/integrations/webhook_logs/retry-webhook-delivery"}]},{"group":"webhooks","pages":[{"title":"Create webhook","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/webhooks","href":"/api-reference/integrations/webhooks/create-webhook"},{"title":"Search webhooks","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/webhooks/search","href":"/api-reference/integrations/webhooks/search-webhooks"},{"title":"Get webhook","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml get /api/webhooks/{sid}","href":"/api-reference/integrations/webhooks/get-webhook"},{"title":"Delete webhook","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml delete /api/webhooks/{sid}","href":"/api-reference/integrations/webhooks/delete-webhook"},{"title":"Update webhook","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml patch /api/webhooks/{sid}","href":"/api-reference/integrations/webhooks/update-webhook"},{"title":"Test webhook","deprecated":null,"version":null,"openapi":"/api-reference/integrations/openapi.yaml post /api/webhooks/{sid}/test","href":"/api-reference/integrations/webhooks/test-webhook"}]}]},{"group":"ID and Teams API","pages":[{"group":"api_keys","pages":[{"title":"Create API key","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/api-keys","href":"/api-reference/id/api_keys/create-api-key"},{"title":"API key metrics","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/api-keys/metrics","href":"/api-reference/id/api_keys/api-key-metrics"},{"title":"Search API keys","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/api-keys/search","href":"/api-reference/id/api_keys/search-api-keys"},{"title":"Get API key","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml get /api/api-keys/{sid}","href":"/api-reference/id/api_keys/get-api-key"},{"title":"Revoke API key","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml delete /api/api-keys/{sid}","href":"/api-reference/id/api_keys/revoke-api-key"},{"title":"Update API key","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml patch /api/api-keys/{sid}","href":"/api-reference/id/api_keys/update-api-key"},{"title":"Rotate API key","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/api-keys/{sid}/rotate","href":"/api-reference/id/api_keys/rotate-api-key"}]},{"group":"billing_payment_methods","pages":[{"title":"List payment methods","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml get /api/billing-payment-methods","href":"/api-reference/id/billing_payment_methods/list-payment-methods"},{"title":"Get add-card link","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/billing-payment-methods/get-add-link","href":"/api-reference/id/billing_payment_methods/get-add-card-link"},{"title":"Delete payment method","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml delete /api/billing-payment-methods/{sid}","href":"/api-reference/id/billing_payment_methods/delete-payment-method"}]},{"group":"billing_products","pages":[{"title":"Search billing products","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/billing-products/search","href":"/api-reference/id/billing_products/search-billing-products"}]},{"group":"billing_subscriptions","pages":[{"title":"Create subscription checkout","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/billing-subscriptions/create-checkout","href":"/api-reference/id/billing_subscriptions/create-subscription-checkout"},{"title":"Quote a billing order","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/billing-subscriptions/quote","href":"/api-reference/id/billing_subscriptions/quote-a-billing-order"},{"title":"Search billing subscriptions","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/billing-subscriptions/search","href":"/api-reference/id/billing_subscriptions/search-billing-subscriptions"},{"title":"Get billing subscription","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml get /api/billing-subscriptions/{sid}","href":"/api-reference/id/billing_subscriptions/get-billing-subscription"},{"title":"Cancel subscription","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/billing-subscriptions/{sid}/cancel","href":"/api-reference/id/billing_subscriptions/cancel-subscription"},{"title":"Change subscription","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/billing-subscriptions/{sid}/change","href":"/api-reference/id/billing_subscriptions/change-subscription"},{"title":"Get update-payment-method link","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/billing-subscriptions/{sid}/get-update-payment-method-link","href":"/api-reference/id/billing_subscriptions/get-update-payment-method-link"},{"title":"Pause subscription","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/billing-subscriptions/{sid}/pause","href":"/api-reference/id/billing_subscriptions/pause-subscription"},{"title":"Preview subscription change","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/billing-subscriptions/{sid}/preview-change","href":"/api-reference/id/billing_subscriptions/preview-subscription-change"},{"title":"Resume subscription","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/billing-subscriptions/{sid}/resume","href":"/api-reference/id/billing_subscriptions/resume-subscription"},{"title":"Undo scheduled cancel","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/billing-subscriptions/{sid}/undo-cancel","href":"/api-reference/id/billing_subscriptions/undo-scheduled-cancel"}]},{"group":"billing_transactions","pages":[{"title":"Billing transaction metrics","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/billing-transactions/metrics","href":"/api-reference/id/billing_transactions/billing-transaction-metrics"},{"title":"Search billing transactions","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/billing-transactions/search","href":"/api-reference/id/billing_transactions/search-billing-transactions"},{"title":"Get billing transaction","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml get /api/billing-transactions/{sid}","href":"/api-reference/id/billing_transactions/get-billing-transaction"},{"title":"Get transaction invoice","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/billing-transactions/{sid}/get-invoice","href":"/api-reference/id/billing_transactions/get-transaction-invoice"}]},{"group":"credit_lots","pages":[{"title":"Credit wallet balance","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/credit-lots/metrics","href":"/api-reference/id/credit_lots/credit-wallet-balance"}]},{"group":"credit_transactions","pages":[{"title":"Credit spend by day","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/credit-transactions/metrics","href":"/api-reference/id/credit_transactions/credit-spend-by-day"}]},{"group":"gtm_connections","pages":[{"title":"Complete gtm workspace link","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/gtm-connections/complete-link","href":"/api-reference/id/gtm_connections/complete-gtm-workspace-link"},{"title":"Search gtm connections","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/gtm-connections/search","href":"/api-reference/id/gtm_connections/search-gtm-connections"},{"title":"Start gtm workspace link","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/gtm-connections/start-link","href":"/api-reference/id/gtm_connections/start-gtm-workspace-link"},{"title":"Revoke gtm connection","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/gtm-connections/{sid}/revoke","href":"/api-reference/id/gtm_connections/revoke-gtm-connection"}]},{"group":"notifications","pages":[{"title":"Mark all notifications read","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/notifications/mark-all-read","href":"/api-reference/id/notifications/mark-all-notifications-read"},{"title":"Search notifications","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/notifications/search","href":"/api-reference/id/notifications/search-notifications"},{"title":"Get notification","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml get /api/notifications/{sid}","href":"/api-reference/id/notifications/get-notification"},{"title":"Dismiss notification","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml delete /api/notifications/{sid}","href":"/api-reference/id/notifications/dismiss-notification"},{"title":"Mark notification read","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/notifications/{sid}/mark-read","href":"/api-reference/id/notifications/mark-notification-read"}]},{"group":"oauth_authorizations","pages":[{"title":"Search connected apps","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/oauth-authorizations/search","href":"/api-reference/id/oauth_authorizations/search-connected-apps"},{"title":"Edit connected app","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml patch /api/oauth-authorizations/{sid}","href":"/api-reference/id/oauth_authorizations/edit-connected-app"},{"title":"Disconnect app (revoke grant)","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/oauth-authorizations/{sid}/revoke","href":"/api-reference/id/oauth_authorizations/disconnect-app-revoke-grant"}]},{"group":"oauth_clients","pages":[{"title":"Create OAuth client","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/oauth-clients","href":"/api-reference/id/oauth_clients/create-oauth-client"},{"title":"Search OAuth clients","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/oauth-clients/search","href":"/api-reference/id/oauth_clients/search-oauth-clients"},{"title":"Get OAuth client","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml get /api/oauth-clients/{sid}","href":"/api-reference/id/oauth_clients/get-oauth-client"},{"title":"Delete OAuth client","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml delete /api/oauth-clients/{sid}","href":"/api-reference/id/oauth_clients/delete-oauth-client"},{"title":"Update OAuth client","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml patch /api/oauth-clients/{sid}","href":"/api-reference/id/oauth_clients/update-oauth-client"},{"title":"Disable OAuth client","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/oauth-clients/{sid}/disable","href":"/api-reference/id/oauth_clients/disable-oauth-client"},{"title":"Enable OAuth client","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/oauth-clients/{sid}/enable","href":"/api-reference/id/oauth_clients/enable-oauth-client"}]},{"group":"sessions","pages":[{"title":"Search sessions","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/sessions/search","href":"/api-reference/id/sessions/search-sessions"},{"title":"Revoke session","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/sessions/{sid}/revoke","href":"/api-reference/id/sessions/revoke-session"}]},{"group":"ssl_certificates","pages":[{"title":"Search SSL certificates","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/ssl-certificates/search","href":"/api-reference/id/ssl_certificates/search-ssl-certificates"},{"title":"Get SSL certificate","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml get /api/ssl-certificates/{sid}","href":"/api-reference/id/ssl_certificates/get-ssl-certificate"},{"title":"Delete SSL certificate","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml delete /api/ssl-certificates/{sid}","href":"/api-reference/id/ssl_certificates/delete-ssl-certificate"},{"title":"Issue SSL certificate","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/ssl-certificates/{sid}/issue","href":"/api-reference/id/ssl_certificates/issue-ssl-certificate"},{"title":"Renew SSL certificate","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/ssl-certificates/{sid}/renew","href":"/api-reference/id/ssl_certificates/renew-ssl-certificate"}]},{"group":"subscription_allocations","pages":[{"title":"Create subscription allocation","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/subscription-allocations","href":"/api-reference/id/subscription_allocations/create-subscription-allocation"},{"title":"Search subscription allocations","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/subscription-allocations/search","href":"/api-reference/id/subscription_allocations/search-subscription-allocations"},{"title":"Get subscription allocation","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml get /api/subscription-allocations/{sid}","href":"/api-reference/id/subscription_allocations/get-subscription-allocation"},{"title":"Delete subscription allocation","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml delete /api/subscription-allocations/{sid}","href":"/api-reference/id/subscription_allocations/delete-subscription-allocation"},{"title":"Update subscription allocation","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml patch /api/subscription-allocations/{sid}","href":"/api-reference/id/subscription_allocations/update-subscription-allocation"}]},{"group":"team_members","pages":[{"title":"Invite team member","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/team-members","href":"/api-reference/id/team_members/invite-team-member"},{"title":"Accept team member invitation","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/team-members/accept-invitation","href":"/api-reference/id/team_members/accept-team-member-invitation"},{"title":"Search team members","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/team-members/search","href":"/api-reference/id/team_members/search-team-members"},{"title":"Remove team member","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml delete /api/team-members/{sid}","href":"/api-reference/id/team_members/remove-team-member"},{"title":"Update team member","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml patch /api/team-members/{sid}","href":"/api-reference/id/team_members/update-team-member"},{"title":"Resend team member invitation","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/team-members/{sid}/resend-invitation","href":"/api-reference/id/team_members/resend-team-member-invitation"}]},{"group":"teams","pages":[{"title":"Create team","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/teams","href":"/api-reference/id/teams/create-team"},{"title":"Search teams","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/teams/search","href":"/api-reference/id/teams/search-teams"},{"title":"Get team","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml get /api/teams/{sid}","href":"/api-reference/id/teams/get-team"},{"title":"Delete team","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml delete /api/teams/{sid}","href":"/api-reference/id/teams/delete-team"},{"title":"Update team","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml patch /api/teams/{sid}","href":"/api-reference/id/teams/update-team"},{"title":"Transfer team ownership","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/teams/{sid}/transfer-ownership","href":"/api-reference/id/teams/transfer-team-ownership"}]},{"group":"user_profiles","pages":[{"title":"Get user profile","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml get /api/user-profile","href":"/api-reference/id/user_profiles/get-user-profile"},{"title":"Update user profile","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml patch /api/user-profile","href":"/api-reference/id/user_profiles/update-user-profile"}]},{"group":"users","pages":[{"title":"Get current user","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml get /api/users/current","href":"/api-reference/id/users/get-current-user"},{"title":"Update current user","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml patch /api/users/current","href":"/api-reference/id/users/update-current-user"}]},{"group":"whitelabel_clients","pages":[{"title":"Search whitelabel clients","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/whitelabel-clients/search","href":"/api-reference/id/whitelabel_clients/search-whitelabel-clients"}]},{"group":"whitelabels","pages":[{"title":"Create whitelabel","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/whitelabels","href":"/api-reference/id/whitelabels/create-whitelabel"},{"title":"Search whitelabels","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/whitelabels/search","href":"/api-reference/id/whitelabels/search-whitelabels"},{"title":"Get whitelabel","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml get /api/whitelabels/{sid}","href":"/api-reference/id/whitelabels/get-whitelabel"},{"title":"Delete whitelabel","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml delete /api/whitelabels/{sid}","href":"/api-reference/id/whitelabels/delete-whitelabel"},{"title":"Update whitelabel","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml patch /api/whitelabels/{sid}","href":"/api-reference/id/whitelabels/update-whitelabel"},{"title":"Activate whitelabel","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/whitelabels/{sid}/activate","href":"/api-reference/id/whitelabels/activate-whitelabel"},{"title":"Open whitelabel client workspace","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/whitelabels/{sid}/clients/{teamSid}/open","href":"/api-reference/id/whitelabels/open-whitelabel-client-workspace"},{"title":"Disable whitelabel","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/whitelabels/{sid}/disable","href":"/api-reference/id/whitelabels/disable-whitelabel"},{"title":"Enable whitelabel","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/whitelabels/{sid}/enable","href":"/api-reference/id/whitelabels/enable-whitelabel"},{"title":"Verify whitelabel email domain","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml post /api/whitelabels/{sid}/verify-email-domain","href":"/api-reference/id/whitelabels/verify-whitelabel-email-domain"}]},{"group":"workspace_profiles","pages":[{"title":"Get workspace profile","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml get /api/workspace-profile","href":"/api-reference/id/workspace_profiles/get-workspace-profile"},{"title":"Update workspace profile","deprecated":null,"version":null,"openapi":"/api-reference/id/openapi.yaml patch /api/workspace-profile","href":"/api-reference/id/workspace_profiles/update-workspace-profile"}]}]}]},{"tab":"MCP","pages":[{"title":"MCP","href":"/mcp/overview"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]},"basePath":"","title":"Create data source - GetSales","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CS552b7R.js","utils-DDTCYAF2.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-De8ttokP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DrwRDvAh.js","snippetPresets-DtAN0nWx.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-D5rWArI6.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-O2i12wsz.js","shallow-DV8xABTt.js","getApiPlaygroundDisplay-DBZ0B5Jx.js","CodeSnippet-BVi0tPUX.js","CodeSnippets-CqASbIwY.js","Page-m07pfKpT.js","getPastedJson-DG9vsMS8.js","icon-CXzRSCr8.js","MethodPill-BdKVtEuX.js","DuplicateIcon-CZlmBrJI.js","createIcon-biFEUKPL.js","DynamicMarkdown-B54_zNBF.js","SectionHeading-DwwHK3Pt.js","axios-vUo_bRtp.js","Markdown-DfhCTwyA.js","clsx-xpJZXxdP.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BTZUMDnx.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-DqdKa2R4.js"]}