Messages are ordered by time, then by message ID to keep the order stable.
Different filters combine with AND, and multiple values in the same filter
combine with OR.
A date-range query with no other filter that would span more than 10,000
sessions is rejected with 400, so narrow the range or add sessionIds for
busy projects.
GET
/
api
/
public
/
analytics
/
projects
/
{projectId}
/
conversation-history
List conversation messages
curl --request GET \ --url https://{host}/api/public/analytics/projects/{projectId}/conversation-history \ --header 'x-api-key: <api-key>'
Returns the messages exchanged in a project’s conversations chronologically. Message content is filtered according to the project’s PII policy before it is returned, so sensitive values may be masked or removed. Messages are ordered by time, then by message ID to keep the order stable.Different filters combine with AND, and multiple values in the same filter combine with OR.Give either a date range (fromDate and toDate together) or a list of sessionIds. A date-range query with no other filter may span a long list of sessions, so always use a filter and paginate as needed. A response that span more than 10,000 sessions is rejected with 400, so narrow the range or add sessionIds for busy projects.For pagination, prefer cursor: pass the nextCursor value from the previous response. offset also works, and skip is an older name for offset that is still accepted. Use only one of the three in a single request.Authenticate with the x-api-key header. The key must be bound to the project you are querying and have analytics:read permission.
Filter to messages from specific end users, using the identity recorded for
them on the channel. Pass up to 100 values, comma-separated or by repeating
the parameter.
Filter to sessions from specific callers (ANI or provider caller id). Pass up
to 100 values, comma-separated (spaces after commas are allowed) or by
repeating the parameter; the filter is ANDed with every other filter. The
100-value limit counts entries before duplicates are merged; more returns
400 TOO_MANY_FILTER_VALUES. A value that itself contains a comma cannot be
queried, because commas always separate values.
Paste the value in any format the provider, a transcript, a CDR or a
spreadsheet shows. Each value is turned into the same match key the platform
stored at call time: invisible characters, fullwidth digits and Unicode
dashes are cleaned up, a national trunk (0) after the country code is
removed (+44 (0)20 7946 0958 matches +442079460958), and phone-like
values (including sip: and
tel: URIs, spaces, dashes, dots, slashes and parentheses) become E.164.
7 to 15 bare digits are treated as an international number (919876543210
matches +919876543210). Digits written in a national format keep their
digits (098765 43210 matches 09876543210). Other values, such as softphone
usernames, SDK ids or Anonymous, are matched as cleaned text. Matching is
exact and case-sensitive: anonymous does not match Anonymous, and
+14155550100 ext 12 does not match +14155550100. Non-ASCII digits such as
Arabic-Indic digits are not converted to ASCII. Keys longer than 128
characters are truncated, the same way they were when stored.
There is no country inference: a national number without its country code
(9876543210) does not match a stored +919876543210, and 00 or 011
dial prefixes are not converted. Send the full international form where
possible. Send + as %2B or use the POST twin; an unencoded + decodes to
a space, which is also accepted and gives the same match. Anonymous matches
every withheld-number call in the window.
An entry that is empty or has no letter or digit (for example
callerNumber=, a trailing comma, or only +), or an entry longer than 512
characters, returns 400 INVALID_CALLER_NUMBER. The value is
never returned in the response. When the project's reporting exposure config
disables the identity field group, a request with this parameter returns
403 CALLER_NUMBER_LOOKUP_DISABLED.
Coverage: this endpoint compares the caller value the provider stored on the
session record, as received, with the match key, the match key without +,
and the cleaned value as you sent it. It covers sessions recorded before this
filter shipped. Pasting the provider value exactly as stored matches,
unless the stored value itself contains invisible characters, fullwidth
digits, Unicode dashes or surrounding whitespace (those are cleaned from
what you send, so only its E.164 or bare-digit form can match). A
re-formatted copy matches here only when it shares the E.164 or bare-digit
form of the stored value: for example +44 20 7946 0958 does not match a
stored +44 (0)20 7946 0958, and 09876543210 does not match a stored
098765 43210, although /sessions matches both. Playground and Studio
debug sessions are never matched.
Filter by the channel the conversation took place on. Pass up to 100 values,
comma-separated or by repeating the parameter.
Matched exactly as stored, with no alias handling. Unlike the sessions
endpoint, web and web_chat are different values here, and shorthand such
as sms or sdk_http matches nothing — use the exact channel name.
Not restricted to a fixed list, so an unrecognised value returns no results
rather than an error.
Filter by environment. Pass up to 100 values, comma-separated or by
repeating the parameter. Matched exactly as stored.
Not restricted to a fixed list, so an unrecognised value returns no results
rather than an error, though in practice only the four values below are
stored.
Filter by a custom dimension recorded against the session. Replace key with
the dimension name — for example traceDimensions[tier]=gold. Repeat with
different keys to require all of them. Values match exactly.
How many messages to return. A page may come back with fewer than requested
so the response stays within the 1 MiB size limit — check hasMore rather
than assuming a short page is the last one.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Kore.ai Docs","description":"Kore.ai Product Documentation","colors":{"primary":"#16A34A","light":"#07C983","dark":"#15803D"},"logo":{"light":"https://mintcdn.com/koreai/0qAbPzQhx-4ILs7Q/assets/koreailogo-black.svg?fit=max\u0026auto=format\u0026n=0qAbPzQhx-4ILs7Q\u0026q=85\u0026s=b04520c55b7651e03e614e156f879b46","dark":"https://mintcdn.com/koreai/0qAbPzQhx-4ILs7Q/assets/koreailogo-white.svg?fit=max\u0026auto=format\u0026n=0qAbPzQhx-4ILs7Q\u0026q=85\u0026s=d974708d45aa7d1aa5f779f1cd3654ad"},"favicon":{"light":"https://mintcdn.com/koreai/w9BAaj3uMfzLSSYf/assets/favicon-light.svg?fit=max\u0026auto=format\u0026n=w9BAaj3uMfzLSSYf\u0026q=85\u0026s=3ea0a3762b1a3c65d930d1a5fd7a2a22","dark":"https://mintcdn.com/koreai/hJYZlvgLmtQesNz0/assets/favicon-dark.png?fit=max\u0026auto=format\u0026n=hJYZlvgLmtQesNz0\u0026q=85\u0026s=9281e12ca658788af1c9278bae85c981"},"api":{"playground":{"display":"simple","proxy":false},"examples":{"languages":["curl"]}},"appearance":{"default":"system","strict":false},"navbar":{"links":[{"icon":"book-open","href":"https://academy.kore.ai/","label":"Academy"},{"icon":"message","href":"https://community.kore.ai/","label":"Community"},{"icon":"life-ring","href":"https://support.kore.ai/","label":"Support"}]},"footer":{"socials":{"github":"https://github.com/Koredotcom","linkedin":"https://www.linkedin.com/company/kore-inc","facebook":"https://www.facebook.com/KoreDotAI"},"links":[{"header":" ","items":[{"label":"Acceptable Use","href":"https://www.kore.ai/acceptable-use-policy"},{"label":"Terms of Service","href":"https://www.kore.ai/terms-of-service"}]},{"header":" ","items":[{"label":"Privacy Policy","href":"https://www.kore.ai/privacy-policy"},{"label":"Cookie Policy","href":"https://www.kore.ai/cookie-policy"}]}]},"seo":{"metatags":{"canonical":"https://docs.kore.ai"},"indexing":"all"},"icons":{"library":"fontawesome"},"styling":{"eyebrows":"breadcrumbs","latex":true},"integrations":{"clarity":{"projectId":"vja4or1wun"},"ga4":{"measurementId":"G-560BYJFH0P"},"heap":{"appId":"4257246426"},"logrocket":{"appId":"ehyoae/koreaidocs"}},"errors":{"404":{"redirect":false,"title":"Sorry, we couldn't find the page.","description":"Check the pages linked here or search."}},"contextual":{"options":["copy","view","claude","cursor","vscode"],"display":"header"},"variables":{"artemisurl":"see the list of [region-specific platform URLs](/agent-platform/getting-started#region-specific-urls-and-allowlist-of-ips)","support":"[contact Support](https://support.kore.ai/)","related":"**Related articles:**"},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"koreai","hasAudioNarration":false,"actualSubdomain":"koreai","customDomains":[],"gitSource":{"type":"github","owner":"koredotcom","repo":"docs-v2","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"feedback":{"thumbs":true,"edits":false,"issues":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"DISABLED"}},"buildId":"6af0a4ca2cd45511358452eb","clientVersion":"0.0.4087","searchFilterCounts":[{"language":"default","tag":"Guide","count":55},{"language":"default","tag":"APIs and SDK","count":32},{"language":"default","tag":"APIs","count":28},{"language":"default","tag":"Build","count":23},{"language":"default","tag":"ABL","count":16},{"language":"default","tag":"Analytics and insights","count":12},{"language":"default","tag":"Administration","count":10},{"language":"default","tag":"Get started","count":8},{"language":"default","tag":"Analytics APIs","count":8},{"language":"default","tag":"Outbound calls APIs","count":8}],"searchSettings":{"maxResults":12,"isFiltersEnabled":true}},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":true,"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":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"custom-css/style.css","content":"html[data-current-path^=\"/agent-platform\"] .nav-tabs>.nav-tabs-item:nth-child(8){display:none}html[data-current-path^=\"/home\"] .nav-tabs>.nav-tabs-item:nth-child(8){display:none}html[data-current-path^=\"/ai-for-work\"] .nav-tabs>.nav-tabs-item:nth-child(1),html[data-current-path^=\"/ai-for-work\"] .nav-tabs>.nav-tabs-item:nth-child(2),html[data-current-path^=\"/ai-for-work\"] .nav-tabs>.nav-tabs-item:nth-child(3),html[data-current-path^=\"/ai-for-work\"] .nav-tabs>.nav-tabs-item:nth-child(4),html[data-current-path^=\"/ai-for-work\"] .nav-tabs>.nav-tabs-item:nth-child(5),html[data-current-path^=\"/ai-for-work\"] .nav-tabs>.nav-tabs-item:nth-child(6),html[data-current-path^=\"/ai-for-work\"] .nav-tabs>.nav-tabs-item:nth-child(7){display:none}html[data-current-path^=\"/ai-for-process\"] .nav-tabs>.nav-tabs-item:nth-child(1),html[data-current-path^=\"/ai-for-process\"] .nav-tabs>.nav-tabs-item:nth-child(2),html[data-current-path^=\"/ai-for-process\"] .nav-tabs>.nav-tabs-item:nth-child(3),html[data-current-path^=\"/ai-for-process\"] .nav-tabs>.nav-tabs-item:nth-child(4),html[data-current-path^=\"/ai-for-process\"] .nav-tabs>.nav-tabs-item:nth-child(5),html[data-current-path^=\"/ai-for-process\"] .nav-tabs>.nav-tabs-item:nth-child(6),html[data-current-path^=\"/ai-for-process\"] .nav-tabs>.nav-tabs-item:nth-child(7){display:none}html[data-current-path^=\"/ai-for-service\"] .nav-tabs>.nav-tabs-item:nth-child(1),html[data-current-path^=\"/ai-for-service\"] .nav-tabs>.nav-tabs-item:nth-child(2),html[data-current-path^=\"/ai-for-service\"] .nav-tabs>.nav-tabs-item:nth-child(3),html[data-current-path^=\"/ai-for-service\"] .nav-tabs>.nav-tabs-item:nth-child(4),html[data-current-path^=\"/ai-for-service\"] .nav-tabs>.nav-tabs-item:nth-child(5),html[data-current-path^=\"/ai-for-service\"] .nav-tabs>.nav-tabs-item:nth-child(6),html[data-current-path^=\"/ai-for-service\"] .nav-tabs>.nav-tabs-item:nth-child(7){display:none}html[data-current-path^=\"/agent-platform/v1\"] .nav-tabs>.nav-tabs-item:nth-child(1),html[data-current-path^=\"/agent-platform/v1\"] .nav-tabs>.nav-tabs-item:nth-child(2),html[data-current-path^=\"/agent-platform/v1\"] .nav-tabs>.nav-tabs-item:nth-child(3),html[data-current-path^=\"/agent-platform/v1\"] .nav-tabs>.nav-tabs-item:nth-child(4),html[data-current-path^=\"/agent-platform/v1\"] .nav-tabs>.nav-tabs-item:nth-child(5),html[data-current-path^=\"/agent-platform/v1\"] .nav-tabs>.nav-tabs-item:nth-child(6),html[data-current-path^=\"/agent-platform/v1\"] .nav-tabs>.nav-tabs-item:nth-child(7){display:none}html[data-current-path^=\"/agent-platform\"] .mobile-nav-tabs-item:nth-child(8){display:none}html[data-current-path^=\"/home\"] .mobile-nav-tabs-item:nth-child(8){display:none}html[data-current-path^=\"/ai-for-work\"] .mobile-nav-tabs-item:nth-child(1),html[data-current-path^=\"/ai-for-work\"] .mobile-nav-tabs-item:nth-child(2),html[data-current-path^=\"/ai-for-work\"] .mobile-nav-tabs-item:nth-child(3),html[data-current-path^=\"/ai-for-work\"] .mobile-nav-tabs-item:nth-child(4),html[data-current-path^=\"/ai-for-work\"] .mobile-nav-tabs-item:nth-child(5),html[data-current-path^=\"/ai-for-work\"] .mobile-nav-tabs-item:nth-child(6),html[data-current-path^=\"/ai-for-work\"] .mobile-nav-tabs-item:nth-child(7){display:none}html[data-current-path^=\"/ai-for-process\"] .mobile-nav-tabs-item:nth-child(1),html[data-current-path^=\"/ai-for-process\"] .mobile-nav-tabs-item:nth-child(2),html[data-current-path^=\"/ai-for-process\"] .mobile-nav-tabs-item:nth-child(3),html[data-current-path^=\"/ai-for-process\"] .mobile-nav-tabs-item:nth-child(4),html[data-current-path^=\"/ai-for-process\"] .mobile-nav-tabs-item:nth-child(5),html[data-current-path^=\"/ai-for-process\"] .mobile-nav-tabs-item:nth-child(6),html[data-current-path^=\"/ai-for-process\"] .mobile-nav-tabs-item:nth-child(7){display:none}html[data-current-path^=\"/ai-for-service\"] .mobile-nav-tabs-item:nth-child(1),html[data-current-path^=\"/ai-for-service\"] .mobile-nav-tabs-item:nth-child(2),html[data-current-path^=\"/ai-for-service\"] .mobile-nav-tabs-item:nth-child(3),html[data-current-path^=\"/ai-for-service\"] .mobile-nav-tabs-item:nth-child(4),html[data-current-path^=\"/ai-for-service\"] .mobile-nav-tabs-item:nth-child(5),html[data-current-path^=\"/ai-for-service\"] .mobile-nav-tabs-item:nth-child(6),html[data-current-path^=\"/ai-for-service\"] .mobile-nav-tabs-item:nth-child(7){display:none}html[data-current-path^=\"/agent-platform/v1\"] .mobile-nav-tabs-item:nth-child(1),html[data-current-path^=\"/agent-platform/v1\"] .mobile-nav-tabs-item:nth-child(2),html[data-current-path^=\"/agent-platform/v1\"] .mobile-nav-tabs-item:nth-child(3),html[data-current-path^=\"/agent-platform/v1\"] .mobile-nav-tabs-item:nth-child(4),html[data-current-path^=\"/agent-platform/v1\"] .mobile-nav-tabs-item:nth-child(5),html[data-current-path^=\"/agent-platform/v1\"] .mobile-nav-tabs-item:nth-child(6),html[data-current-path^=\"/agent-platform/v1\"] .mobile-nav-tabs-item:nth-child(7){display:none}html[data-current-path^=\"/ai-for-\"] nav-tabs-item:has(a[href=\"/agent-platform\"]){display:none}html[data-current-path^=\"/agent-platform/v1\"] nav-tabs-item:not(:has(a[href=\"/ai-for-service/solutions-overview\"])),html[data-current-path^=\"/ai-for-work\"] nav-tabs-item:not(:has(a[href=\"/ai-for-service/solutions-overview\"])),html[data-current-path^=\"/ai-for-process\"] nav-tabs-item:not(:has(a[href=\"/ai-for-service/solutions-overview\"])),html[data-current-path^=\"/ai-for-service\"] nav-tabs-item:not(:has(a[href=\"/ai-for-service/solutions-overview\"])){display:none}html[data-current-path^=\"/agent-platform/\"] nav-tabs-item:has(a[href=\"/ai-for-service/solutions-overview\"]){display:none}html[data-current-path^=\"/agent-platform/v1\"] nav-tabs-item:has(a[href=\"/ai-for-service/solutions-overview\"]){display:revert}html[data-current-path^=\"/ai-for-work\"] #search-bar-entry,html[data-current-path^=\"/ai-for-work\"] #search-bar-entry-mobile{display:none}html[data-current-path^=\"/ai-for-service\"] #search-bar-entry,html[data-current-path^=\"/ai-for-service\"] #search-bar-entry-mobile{display:none}html[data-current-path^=\"/ai-for-process\"] #search-bar-entry,html[data-current-path^=\"/ai-for-process\"] #search-bar-entry-mobile{display:none}html[data-current-path^=\"/agent-platform/v1\"] #search-bar-entry,html[data-current-path^=\"/agent-platform/v1\"] #search-bar-entry-mobile{display:none}html[data-current-path^=\"/ai-for-work\"] #assistant-entry,html[data-current-path^=\"/ai-for-work\"] #assistant-entry-mobile{display:none}html[data-current-path^=\"/ai-for-process\"] #assistant-entry,html[data-current-path^=\"/ai-for-process\"] #assistant-entry-mobile{display:none}html[data-current-path^=\"/agent-platform/v1\"] #assistant-entry,html[data-current-path^=\"/agent-platform/v1\"] #assistant-entry-mobile{display:none}html[data-current-path^=\"/ai-for-service\"] #assistant-entry,html[data-current-path^=\"/ai-for-service\"] #assistant-entry-mobile{display:none}.ascii-art{font-family:monospace;white-space:pre;width:720px;overflow-x:auto;margin:auto;font-size:13px}img[data-path$=\".png\"],img[src*=\".png\"]{border:1px solid #E5E7EB;border-radius:0.75rem;transition:all 0.2s ease-in-out;display:block;max-width:100%;height:auto}img[data-path$=\".png\"]:hover,img[src*=\".png\"]:hover{border-color:#D1D5DB;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0, 0, 0, 0.05)}.rn-heading{font-size:1.25rem;font-weight:500;line-height:1.4;margin-top:2.0rem;margin-bottom:1.25rem;color:inherit}.rn-title{font-size:1.025rem;font-weight:600;line-height:1.4;margin-top:1.5rem;margin-bottom:0.375rem;color:inherit}.rn-subtitle{font-size:0.9375rem;font-weight:600;line-height:1.0;margin-top:1.20rem;margin-bottom:-0.50rem;color:inherit}@media (prefers-color-scheme: dark){img[data-path$=\".png\"],img[src*=\".png\"]{border-color:#374151;background-color:transparent}}:root{--kore-card-title: 15px;--kore-card-desc: 13.5px;--kore-section-title: clamp(1.4rem, 2.2vw, 1.85rem);--kore-body-lh: 1.6;--kore-eyebrow-ls: 0.1em;--kore-card-pad: 22px;--kore-grid-gap: 16px;--kore-section-pad: 80px;--kore-ease: cubic-bezier(0.22, 0.6, 0.36, 1);--kore-duration: 0.2s;--kore-hover-y: -3px;--kore-hover-shadow: 0 8px 24px rgba(92,200,58,0.14);--kore-hover-border: #5CC83A;--kore-accent: #5CC83A;--kore-bg: #FEF8EE;--kore-surface: #ffffff;--kore-border: #CCCCCC;--kore-text: #000000;--kore-muted: #666666;--kore-faint: #999999}.dark{--kore-bg: #26282F;--kore-surface: #1d2820;--kore-border: #2d3a2e;--kore-text: #F1F5F9;--kore-muted: #999999;--kore-faint: #555555;--kore-accent: #5CC83A;--kore-hover-shadow: 0 8px 24px rgba(92,200,58,0.18)}@keyframes koreUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ka1{animation:koreUp 0.6s cubic-bezier(0.22,0.6,0.36,1) 0.05s both}.ka2{animation:koreUp 0.6s cubic-bezier(0.22,0.6,0.36,1) 0.15s both}.ka3{animation:koreUp 0.6s cubic-bezier(0.22,0.6,0.36,1) 0.25s both}.ka4{animation:koreUp 0.6s cubic-bezier(0.22,0.6,0.36,1) 0.35s both}.ka5{animation:koreUp 0.6s cubic-bezier(0.22,0.6,0.36,1) 0.45s both}.kore-page{background:#FEF8EE!important;min-height:100vh;margin-top:-3rem!important;opacity:0;transition:opacity 0.25s ease-out}.kore-loaded .kore-page{opacity:1}.kore-hero-canvas{opacity:0;transition:opacity 0.8s ease-out;will-change:opacity}.kore-hero-canvas.kore-canvas-ready{opacity:1}.kore-container{max-width:1376px!important;margin-left:auto!important;margin-right:auto!important;margin-top:-140px!important;padding:56px 24px 24px!important;box-sizing:border-box!important}.kore-hero{width:100vw!important;position:relative!important;left:50%!important;transform:translateX(-50%)!important;background-color:#FEF8EE!important;background-image:radial-gradient(ellipse 55% 65% at 85% 8%, rgba(35,69,49,0.22) 0%, rgba(92,200,58,0.08) 50%, transparent 70%),\n radial-gradient(circle, rgba(92,200,58,0.22) 1.5px, transparent 1.5px)!important;background-size:100% 100%, 22px 22px!important}.dark .kore-hero{background-color:#0a1209!important;background-image:radial-gradient(ellipse 55% 65% at 85% 8%, rgba(35,69,49,0.8) 0%, rgba(92,200,58,0.18) 50%, transparent 70%),\n radial-gradient(circle, rgba(92,200,58,0.2) 1.5px, transparent 1.5px)!important;background-size:100% 100%, 22px 22px!important}.kore-hero-title{background-image:linear-gradient(135deg, #000000 0%, #234531 55%, #5CC83A 100%)!important;background-color:transparent!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-clip:text!important}.dark .kore-hero-title{background-image:linear-gradient(135deg, #ffffff 0%, #c8f0b0 60%, #5CC83A 100%)!important}.dark .kore-hero .kore-h1{color:#ffffff!important}.dark .kore-hero .kore-subtext{color:rgba(255,255,255,0.62)!important}.kore-hero-badge{color:#234531;background:rgba(92,200,58,0.1);border-color:rgba(92,200,58,0.28)}.dark .kore-hero-badge{color:#5CC83A;background:rgba(92,200,58,0.15);border-color:rgba(92,200,58,0.38)}.kore-icon-chip{width:44px;height:44px;border-radius:10px;flex-shrink:0;background:linear-gradient(135deg, rgba(92,200,58,0.18) 0%, rgba(35,69,49,0.14) 100%);display:flex;align-items:center;justify-content:center;color:#5CC83A}.kore-section-eyebrow{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:var(--kore-eyebrow-ls);color:var(--kore-accent);margin-bottom:10px}.kore-section-title{font-size:var(--kore-section-title);font-weight:700;color:var(--kore-text);line-height:1.25;margin:0 0 8px}.kore-section-sub{font-size:var(--kore-card-desc);color:var(--kore-muted);line-height:var(--kore-body-lh);max-width:420px;margin:0}.dark .kore-section-title{color:var(--kore-text)}.dark .kore-section-eyebrow{color:#5CC83A}.kore-card-work,.kore-card-service,.kore-card-process,.kore-ap-card,.kore-sol-card{border-top:2.5px solid #5CC83A!important}.kore-ap-bleed{width:100vw!important;position:relative!important;left:50%!important;transform:translateX(-50%)!important;background:transparent;padding:0 0 var(--kore-section-pad)}.kore-ap-inner{max-width:1376px;margin:0 auto;padding:0 24px}.kore-ap-header{display:flex;align-items:center;justify-content:space-between;text-decoration:none;margin-bottom:6px;color:inherit}.kore-ap-title{font-size:var(--kore-card-title);font-weight:600;color:var(--kore-text)}.kore-ap-eyebrow{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:var(--kore-eyebrow-ls);color:#5CC83A;margin-bottom:10px}.kore-ap-desc{font-size:var(--kore-card-desc);color:var(--kore-muted);line-height:var(--kore-body-lh);margin:0 0 28px;max-width:560px}.kore-ap-divider{display:none}.dark .kore-ap-bleed{background:transparent}.dark .kore-ap-title{color:var(--kore-text)}.dark .kore-ap-eyebrow{color:#5CC83A}.dark .kore-ap-divider{display:none}.kore-ap-card{background:var(--kore-surface);border:1px solid var(--kore-border);border-radius:12px;padding:var(--kore-card-pad);text-decoration:none;display:flex;flex-direction:column;gap:12px;box-shadow:0 1px 4px rgba(0,0,0,0.04);transition:transform var(--kore-duration) var(--kore-ease), box-shadow var(--kore-duration) var(--kore-ease), border-color var(--kore-duration) var(--kore-ease)}.kore-ap-card:hover{transform:translateY(var(--kore-hover-y));box-shadow:var(--kore-hover-shadow);border-color:var(--kore-hover-border)}.kore-ap-card:hover .kore-ap-card-arrow{opacity:1!important;transform:translateX(3px)!important}.dark .kore-ap-card{box-shadow:0 1px 4px rgba(0,0,0,0.2)}.kore-cap-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:10px}.kore-cap-tile{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border-radius:12px;background:#ffffff;border:1px solid var(--kore-border);box-shadow:0 1px 4px rgba(0,0,0,0.04);text-decoration:none;transition:transform var(--kore-duration) var(--kore-ease), box-shadow var(--kore-duration) var(--kore-ease), border-color var(--kore-duration) var(--kore-ease);position:relative}.kore-cap-tile:hover{transform:translateY(var(--kore-hover-y));box-shadow:var(--kore-hover-shadow);border-color:var(--kore-hover-border)}.kore-cap-tile:hover .kore-cap-tile-arrow{opacity:1!important;transform:translateX(3px)!important}.kore-cap-tile-header{display:flex;align-items:center;gap:10px}.kore-cap-tile .kore-icon-chip{width:28px;height:28px;border-radius:7px}.kore-cap-tile .kore-icon-chip svg{width:14px;height:14px}.kore-cap-tile-title{font-size:13.5px;font-weight:600;color:var(--kore-text);flex:1}.kore-cap-tile-arrow{opacity:0;color:var(--kore-accent);transition:opacity var(--kore-duration) var(--kore-ease), transform var(--kore-duration) var(--kore-ease);flex-shrink:0}.kore-cap-tile-desc{font-size:12.5px;color:var(--kore-muted);line-height:1.5;margin:0}.dark .kore-cap-tile{background:linear-gradient(135deg, #1a2416 0%, #151d12 100%);border-color:#253220}.dark .kore-cap-tile:hover{background:linear-gradient(135deg, #1e2a1a 0%, #192518 100%);border-color:#2e4028}.kore-sol-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:16px}.kore-sol-card{display:flex;flex-direction:column;gap:12px;padding:var(--kore-card-pad);border-radius:12px;background:var(--kore-surface);border:1px solid var(--kore-border);text-decoration:none;transition:transform var(--kore-duration) var(--kore-ease), box-shadow var(--kore-duration) var(--kore-ease), border-color var(--kore-duration) var(--kore-ease);position:relative;overflow:hidden}.kore-sol-card::after{content:'';position:absolute;inset:0;opacity:0;background:radial-gradient(circle at 50% 0%, rgba(92,200,58,0.06), transparent 70%);transition:opacity var(--kore-duration) var(--kore-ease)}.kore-sol-card:hover{transform:translateY(var(--kore-hover-y));box-shadow:var(--kore-hover-shadow);border-color:var(--kore-hover-border)}.kore-sol-card:hover .kore-sol-card-arrow{opacity:1!important;transform:translateX(3px)!important}.kore-sol-card:hover::after{opacity:1}.kore-sol-card .kore-icon-chip{width:40px;height:40px}.kore-sol-card-title{font-size:var(--kore-card-title);font-weight:600;color:var(--kore-text)}.kore-sol-card-desc{font-size:var(--kore-card-desc);color:var(--kore-muted);line-height:var(--kore-body-lh);margin:0}.kore-sol-group-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:var(--kore-eyebrow-ls);color:var(--kore-faint);margin-bottom:12px}.dark .kore-sol-card{background:var(--kore-surface);border-color:var(--kore-border)}.dark .kore-sol-card:hover{box-shadow:var(--kore-hover-shadow)}.kore-resources-bleed{width:100vw!important;position:relative!important;left:50%!important;transform:translateX(-50%)!important;background:#1a1f1c;padding:var(--kore-section-pad) 0}.kore-resources-inner{max-width:1376px;margin:0 auto;padding:0 24px}.kore-resources-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:0}.kore-resource-item{display:flex;flex-direction:column;gap:12px;padding:24px 36px 24px 0;text-decoration:none;border-right:1px solid rgba(255,255,255,0.08)}.kore-resource-item:last-child{border-right:none;padding:24px 0 24px 36px}.kore-resource-item:nth-child(2){padding:24px 36px}.kore-resource-header{display:flex;align-items:center;gap:12px}.kore-resource-icon{width:44px;height:44px;border-radius:12px;background:rgba(92,200,58,0.15);display:flex;align-items:center;justify-content:center;color:#5CC83A;flex-shrink:0}.kore-resource-title{font-size:var(--kore-card-title);font-weight:600;color:#F1F5F9}.kore-resource-desc{font-size:var(--kore-card-desc);color:rgba(255,255,255,0.45);line-height:var(--kore-body-lh);margin:0}.kore-resource-link{font-size:13px;font-weight:500;color:#5CC83A;display:inline-flex;align-items:center;gap:5px;margin-top:auto;transition:gap var(--kore-duration) var(--kore-ease)}.kore-resource-item:hover .kore-resource-link{gap:10px}.dark .kore-resources-bleed{background:#0d1209}.kore-footer-bleed{width:100vw!important;position:relative!important;left:50%!important;transform:translateX(-50%)!important;background:#ffffff;border-top:1px solid #CCCCCC}.kore-footer-inner{max-width:1376px;margin:0 auto;padding:0 24px;padding-bottom:40px}.kore-footer-bleed .kore-footer{margin-top:0!important;border-top:none!important}.dark .kore-footer-bleed{background:#26282F;border-color:#2d3a2e}.kore-card{background:#ffffff!important;transition:transform var(--kore-duration) var(--kore-ease),\n box-shadow var(--kore-duration) var(--kore-ease),\n border-color var(--kore-duration) var(--kore-ease)!important}.kore-card:hover{transform:translateY(var(--kore-hover-y))!important;box-shadow:var(--kore-hover-shadow)!important;border-color:var(--kore-hover-border)!important}.kore-card:hover .kore-card-arrow{opacity:1!important;transform:translateX(3px)!important}.kore-grid{display:grid!important;gap:var(--kore-grid-gap)!important}.kore-grid-4{grid-template-columns:repeat(4, 1fr)!important}.kore-grid-3{grid-template-columns:repeat(3, 1fr)!important}.dark .kore-page{background:#26282F!important}.kore-hero-overlay{background:radial-gradient(ellipse 60% 70% at 50% 42%, rgba(254,248,238,0.9) 0%, rgba(254,248,238,0.82) 35%, rgba(254,248,238,0.38) 60%, transparent 80%)}.dark .kore-hero-overlay{background:radial-gradient(ellipse 70% 70% at 50% 45%, rgba(10,18,9,0.5) 0%, rgba(10,18,9,0.15) 55%, transparent 78%)}.kore-hero-bottom-fade{background:linear-gradient(to bottom, transparent, #FEF8EE)}.dark .kore-hero-bottom-fade{background:linear-gradient(to bottom, transparent, #26282F)!important}.dark .kore-card{background:#1d2820!important;border-color:#2d3a2e!important;box-shadow:0 1px 4px rgba(0,0,0,0.2)!important}.dark .kore-card:hover{border-color:var(--kore-hover-border)!important;box-shadow:var(--kore-hover-shadow)!important}.dark .kore-icon-chip{background:linear-gradient(135deg, rgba(92,200,58,0.15) 0%, rgba(35,69,49,0.1) 100%);color:#5CC83A}.dark .kore-section-divider{background:#2d3a2e!important}.dark .kore-h1{color:#F1F5F9!important}.dark .kore-subtext{color:#999999!important}.dark .kore-label{color:#555555!important}.dark .kore-card-title{color:#F1F5F9!important}.dark .kore-card-desc{color:#999999!important}.dark .kore-footer{border-color:#2d3a2e!important;color:#555555!important}.dark .kore-footer a{color:#555555!important}.kore-img-dark{display:none!important}.dark .kore-img-light{display:none!important}.dark .kore-img-dark{display:block!important}@media (max-width: 1024px){.kore-grid-4{grid-template-columns:repeat(2, 1fr)!important}.kore-cap-grid{grid-template-columns:repeat(2, 1fr)!important}.kore-sol-grid{grid-template-columns:repeat(2, 1fr)!important}}@media (max-width: 900px){.kore-cap-grid{grid-template-columns:repeat(2, 1fr)!important}}@media (max-width: 768px){.kore-container{padding:24px 16px 48px!important;max-width:100%!important}.kore-grid-4{grid-template-columns:repeat(2, 1fr)!important}.kore-grid-3{grid-template-columns:1fr!important}.kore-solutions-outer{grid-template-columns:1fr!important;gap:28px!important}.kore-cap-list{grid-template-columns:1fr!important}.kore-cap-item:nth-child(odd){border-right:none!important}.kore-cap-grid{grid-template-columns:1fr!important}.kore-sol-grid{grid-template-columns:1fr!important}.kore-resources-grid{grid-template-columns:1fr!important}.kore-resource-item,.kore-resource-item:last-child,.kore-resource-item:nth-child(2){padding:20px 0!important;border-right:none!important;border-bottom:1px solid rgba(255,255,255,0.08)!important}.kore-resource-item:last-child{border-bottom:none!important}}@media (max-width: 480px){.kore-grid-4{grid-template-columns:1fr!important}}"}],"page":{"pagePath":"agent-platform/api-reference/analytics-list-conversation-messages","slug":"/agent-platform/api-reference/analytics-list-conversation-messages","pageMetadata":{"title":"List conversation messages","openapi":"agent-platform/api-specs/messages.yaml get /api/public/analytics/projects/{projectId}/conversation-history","description":"Messages are ordered by time, then by message ID to keep the order stable.\nDifferent filters combine with AND, and multiple values in the same filter\ncombine with OR.\n\nA date-range query with no other filter that would span more than 10,000\nsessions is rejected with `400`, so narrow the range or add `sessionIds` for\nbusy projects.\n","href":"/agent-platform/api-reference/analytics-list-conversation-messages"},"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 p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Messages are ordered by time, then by message ID to keep the order stable.\\nDifferent filters combine with AND, and multiple values in the same filter\\ncombine with OR.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"A date-range query with no other filter that would span more than 10,000\\nsessions is rejected with \", _jsx(_components.code, {\n children: \"400\"\n }), \", so narrow the range or add \", _jsx(_components.code, {\n children: \"sessionIds\"\n }), \" for\\nbusy projects.\"]\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,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={code:`code`,p:`p`,..._provideComponents(),...props.components};return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Returns the messages exchanged in a project’s conversations chronologically. Message content is filtered according to the project’s PII policy before it is returned, so sensitive values may be masked or removed. Messages are ordered by time, then by message ID to keep the order stable.`}),`\n`,_jsx(_components.p,{children:`Different filters combine with AND, and multiple values in the same filter combine with OR.`}),`\n`,_jsxs(_components.p,{children:[`Give either a date range (`,_jsx(_components.code,{children:`fromDate`}),` and `,_jsx(_components.code,{children:`toDate`}),` together) or a list of `,_jsx(_components.code,{children:`sessionIds`}),`. A date-range query with no other filter may span a long list of sessions, so always use a filter and paginate as needed. A response that span more than 10,000 sessions is rejected with `,_jsx(_components.code,{children:`400`}),`, so narrow the range or add `,_jsx(_components.code,{children:`sessionIds`}),` for busy projects.`]}),`\n`,_jsxs(_components.p,{children:[`For pagination, prefer `,_jsx(_components.code,{children:`cursor`}),`: pass the `,_jsx(_components.code,{children:`nextCursor`}),` value from the previous response. `,_jsx(_components.code,{children:`offset`}),` also works, and `,_jsx(_components.code,{children:`skip`}),` is an older name for `,_jsx(_components.code,{children:`offset`}),` that is still accepted. Use only one of the three in a single request.`]}),`\n`,_jsxs(_components.p,{children:[`Authenticate with the `,_jsx(_components.code,{children:`x-api-key`}),` header. The key must be bound to the project you are querying and have `,_jsx(_components.code,{children:`analytics:read`}),` permission.`]})]})}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":"List conversation messages","openapi":"agent-platform/api-specs/messages.yaml get /api/public/analytics/projects/{projectId}/conversation-history","description":"Messages are ordered by time, then by message ID to keep the order stable.\nDifferent filters combine with AND, and multiple values in the same filter\ncombine with OR.\n\nA date-range query with no other filter that would span more than 10,000\nsessions is rejected with `400`, so narrow the range or add `sessionIds` for\nbusy projects.\n","href":"/agent-platform/api-reference/analytics-list-conversation-messages"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/koreai/29b6b962a304e7e8/search.js"],"openApiReferenceData":{"operation":{"tags":["Messages"],"operationId":"listPublicAnalyticsMessages","summary":"List conversation messages","description":"Messages are ordered by time, then by message ID to keep the order stable.\nDifferent filters combine with AND, and multiple values in the same filter\ncombine with OR.\n\nA date-range query with no other filter that would span more than 10,000\nsessions is rejected with `400`, so narrow the range or add `sessionIds` for\nbusy projects.\n","parameters":["540176b2-0935-41c1-8e8f-ecb96e3d3a55","e9be3756-1290-4414-bbd9-9a8ddb7e65a3","50e4f40d-39b6-4af5-997e-26c58f1b8086","2544b5c3-4a99-4f2b-8569-26ef712b4207","a505898f-d625-4ae8-9488-12f95346da3b","4c7a96a0-1532-4c3c-865b-053fe2690fb0","ae0ae45e-b684-4897-bef0-4b3f053bf710","ed12e748-58a0-4f2d-b6e3-98f7f7bf543a","d316fb86-2899-42c1-bb35-d6a66eeca462","0b12cca1-3834-4ebe-88f6-c6c3e9fcd90e","3a52e822-2011-4894-a6bc-59fd5f5d0aeb","d5921f40-e5c4-4359-82b4-9b0f248637d6","4a9c3aff-1999-457b-bb61-c51a0ccc1987","51aa0c75-f01c-4f88-ae4d-2b106e5ac4df"],"responses":{"200":"8a16525c-4674-486a-9fb1-d9ab4a70283f","400":"e97d54b2-4e42-464b-872a-2601c36326cf","401":"2b1460e0-2c3d-41f9-9a63-e6c78979afed","403":"f511e5de-f2b3-4434-bc29-101be542d152","404":"1cb87f4e-e05c-4fbb-9727-333ab0e6caf5","413":"a45b32cf-5b38-4046-b5fd-352dce7e19c6","429":"040b54e5-be9c-489d-94dc-7bf3b258e726","500":"d027eb10-73d2-47aa-aaff-7c7a2275e46e","503":"ec12cb99-9598-4170-ac95-8f58da3b6bc5"},"method":"get","type":"path","servers":["c106c4cb-570f-410d-a7d4-6a92ccca8982"],"security":["11da6ef2-4a6b-4a2c-930c-dbf4e32a982d"],"path":"/api/public/analytics/projects/{projectId}/conversation-history","baseUrlOptions":["https://{host}"],"title":"List conversation messages","codeSamples":[],"requestExampleLanguages":["bash"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated","disableProxy":true},"dependencies":{"parameters":{"540176b2-0935-41c1-8e8f-ecb96e3d3a55":{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"","typeLabel":"string"}},"e9be3756-1290-4414-bbd9-9a8ddb7e65a3":{"name":"fromDate","in":"query","description":"Inclusive ISO 8601 timestamp. Required with `toDate` unless `sessionIds` is supplied.","schema":{"type":"string","format":"date-time","description":"Inclusive ISO 8601 timestamp. Required with `toDate` unless `sessionIds` is supplied.","uniqueKey":"","typeLabel":"string\u003cdate-time>"}},"50e4f40d-39b6-4af5-997e-26c58f1b8086":{"name":"toDate","in":"query","description":"Exclusive ISO 8601 timestamp. Required with `fromDate` unless `sessionIds` is supplied.","schema":{"type":"string","format":"date-time","description":"Exclusive ISO 8601 timestamp. Required with `fromDate` unless `sessionIds` is supplied.","uniqueKey":"","typeLabel":"string\u003cdate-time>"}},"2544b5c3-4a99-4f2b-8569-26ef712b4207":{"name":"sessionIds","in":"query","description":"Filter to specific sessions. Pass up to 10,000 session IDs, comma-separated or\nby repeating the parameter. Can be used instead of a date range.\n","style":"form","explode":false,"schema":{"type":"array","maxItems":10000,"uniqueItems":true,"items":{"type":"string","minLength":1,"uniqueKey":"items.[INDEX]","typeLabel":"string"},"description":"Filter to specific sessions. Pass up to 10,000 session IDs, comma-separated or\nby repeating the parameter. Can be used instead of a date range.\n","uniqueKey":"","typeLabel":"string[]"}},"a505898f-d625-4ae8-9488-12f95346da3b":{"name":"channelUIds","in":"query","description":"Filter to messages from specific end users, using the identity recorded for\nthem on the channel. Pass up to 100 values, comma-separated or by repeating\nthe parameter.\n","style":"form","explode":false,"schema":{"type":"array","maxItems":100,"uniqueItems":true,"items":{"type":"string","minLength":1,"uniqueKey":"items.[INDEX]","typeLabel":"string"},"description":"Filter to messages from specific end users, using the identity recorded for\nthem on the channel. Pass up to 100 values, comma-separated or by repeating\nthe parameter.\n","uniqueKey":"","typeLabel":"string[]"}},"4c7a96a0-1532-4c3c-865b-053fe2690fb0":{"name":"callerNumber","in":"query","description":"Filter to sessions from specific callers (ANI or provider caller id). Pass up\nto 100 values, comma-separated (spaces after commas are allowed) or by\nrepeating the parameter; the filter is ANDed with every other filter. The\n100-value limit counts entries before duplicates are merged; more returns\n`400 TOO_MANY_FILTER_VALUES`. A value that itself contains a comma cannot be\nqueried, because commas always separate values.\n\nPaste the value in any format the provider, a transcript, a CDR or a\nspreadsheet shows. Each value is turned into the same match key the platform\nstored at call time: invisible characters, fullwidth digits and Unicode\ndashes are cleaned up, a national trunk `(0)` after the country code is\nremoved (`+44 (0)20 7946 0958` matches `+442079460958`), and phone-like\nvalues (including `sip:` and\n`tel:` URIs, spaces, dashes, dots, slashes and parentheses) become E.164.\n7 to 15 bare digits are treated as an international number (`919876543210`\nmatches `+919876543210`). Digits written in a national format keep their\ndigits (`098765 43210` matches `09876543210`). Other values, such as softphone\nusernames, SDK ids or `Anonymous`, are matched as cleaned text. Matching is\nexact and case-sensitive: `anonymous` does not match `Anonymous`, and\n`+14155550100 ext 12` does not match `+14155550100`. Non-ASCII digits such as\nArabic-Indic digits are not converted to ASCII. Keys longer than 128\ncharacters are truncated, the same way they were when stored.\n\nThere is no country inference: a national number without its country code\n(`9876543210`) does not match a stored `+919876543210`, and `00` or `011`\ndial prefixes are not converted. Send the full international form where\npossible. Send `+` as `%2B` or use the POST twin; an unencoded `+` decodes to\na space, which is also accepted and gives the same match. `Anonymous` matches\nevery withheld-number call in the window.\n\nAn entry that is empty or has no letter or digit (for example\n`callerNumber=`, a trailing comma, or only `+`), or an entry longer than 512\ncharacters, returns `400 INVALID_CALLER_NUMBER`. The value is\nnever returned in the response. When the project's reporting exposure config\ndisables the `identity` field group, a request with this parameter returns\n`403 CALLER_NUMBER_LOOKUP_DISABLED`.\n\nCoverage: this endpoint compares the caller value the provider stored on the\nsession record, as received, with the match key, the match key without `+`,\nand the cleaned value as you sent it. It covers sessions recorded before this\nfilter shipped. Pasting the provider value exactly as stored matches,\nunless the stored value itself contains invisible characters, fullwidth\ndigits, Unicode dashes or surrounding whitespace (those are cleaned from\nwhat you send, so only its E.164 or bare-digit form can match). A\nre-formatted copy matches here only when it shares the E.164 or bare-digit\nform of the stored value: for example `+44 20 7946 0958` does not match a\nstored `+44 (0)20 7946 0958`, and `09876543210` does not match a stored\n`098765 43210`, although `/sessions` matches both. Playground and Studio\ndebug sessions are never matched.\n","style":"form","explode":false,"schema":{"type":"array","maxItems":100,"items":{"type":"string","minLength":1,"maxLength":512,"uniqueKey":"items.[INDEX]","typeLabel":"string"},"description":"Filter to sessions from specific callers (ANI or provider caller id). Pass up\nto 100 values, comma-separated (spaces after commas are allowed) or by\nrepeating the parameter; the filter is ANDed with every other filter. The\n100-value limit counts entries before duplicates are merged; more returns\n`400 TOO_MANY_FILTER_VALUES`. A value that itself contains a comma cannot be\nqueried, because commas always separate values.\n\nPaste the value in any format the provider, a transcript, a CDR or a\nspreadsheet shows. Each value is turned into the same match key the platform\nstored at call time: invisible characters, fullwidth digits and Unicode\ndashes are cleaned up, a national trunk `(0)` after the country code is\nremoved (`+44 (0)20 7946 0958` matches `+442079460958`), and phone-like\nvalues (including `sip:` and\n`tel:` URIs, spaces, dashes, dots, slashes and parentheses) become E.164.\n7 to 15 bare digits are treated as an international number (`919876543210`\nmatches `+919876543210`). Digits written in a national format keep their\ndigits (`098765 43210` matches `09876543210`). Other values, such as softphone\nusernames, SDK ids or `Anonymous`, are matched as cleaned text. Matching is\nexact and case-sensitive: `anonymous` does not match `Anonymous`, and\n`+14155550100 ext 12` does not match `+14155550100`. Non-ASCII digits such as\nArabic-Indic digits are not converted to ASCII. Keys longer than 128\ncharacters are truncated, the same way they were when stored.\n\nThere is no country inference: a national number without its country code\n(`9876543210`) does not match a stored `+919876543210`, and `00` or `011`\ndial prefixes are not converted. Send the full international form where\npossible. Send `+` as `%2B` or use the POST twin; an unencoded `+` decodes to\na space, which is also accepted and gives the same match. `Anonymous` matches\nevery withheld-number call in the window.\n\nAn entry that is empty or has no letter or digit (for example\n`callerNumber=`, a trailing comma, or only `+`), or an entry longer than 512\ncharacters, returns `400 INVALID_CALLER_NUMBER`. The value is\nnever returned in the response. When the project's reporting exposure config\ndisables the `identity` field group, a request with this parameter returns\n`403 CALLER_NUMBER_LOOKUP_DISABLED`.\n\nCoverage: this endpoint compares the caller value the provider stored on the\nsession record, as received, with the match key, the match key without `+`,\nand the cleaned value as you sent it. It covers sessions recorded before this\nfilter shipped. Pasting the provider value exactly as stored matches,\nunless the stored value itself contains invisible characters, fullwidth\ndigits, Unicode dashes or surrounding whitespace (those are cleaned from\nwhat you send, so only its E.164 or bare-digit form can match). A\nre-formatted copy matches here only when it shares the E.164 or bare-digit\nform of the stored value: for example `+44 20 7946 0958` does not match a\nstored `+44 (0)20 7946 0958`, and `09876543210` does not match a stored\n`098765 43210`, although `/sessions` matches both. Playground and Studio\ndebug sessions are never matched.\n","uniqueKey":"","typeLabel":"string[]"}},"ae0ae45e-b684-4897-bef0-4b3f053bf710":{"name":"channel","in":"query","description":"Filter by the channel the conversation took place on. Pass up to 100 values,\ncomma-separated or by repeating the parameter.\n\nMatched exactly as stored, with no alias handling. Unlike the sessions\nendpoint, `web` and `web_chat` are different values here, and shorthand such\nas `sms` or `sdk_http` matches nothing — use the exact channel name.\n\nNot restricted to a fixed list, so an unrecognised value returns no results\nrather than an error.\n","style":"form","explode":false,"schema":{"type":"array","maxItems":100,"uniqueItems":true,"items":{"type":"string","enum":["http_async","slack","line","msteams","whatsapp","messenger","instagram","twilio_sms","zendesk","telegram","genesys","genesys_open_messaging","ai4w","kore_agent_assist","email","voice_vxml","korevg","audiocodes","genesys_audio_connector","voice_pipeline","voice_realtime","voice","voice_twilio","voice_livekit","ag_ui","a2a","sdk_websocket","web_debug","web_chat","api","http"],"uniqueKey":"items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Filter by the channel the conversation took place on. Pass up to 100 values,\ncomma-separated or by repeating the parameter.\n\nMatched exactly as stored, with no alias handling. Unlike the sessions\nendpoint, `web` and `web_chat` are different values here, and shorthand such\nas `sms` or `sdk_http` matches nothing — use the exact channel name.\n\nNot restricted to a fixed list, so an unrecognised value returns no results\nrather than an error.\n","uniqueKey":"","typeLabel":"enum\u003cstring>[]"}},"ed12e748-58a0-4f2d-b6e3-98f7f7bf543a":{"name":"environment","in":"query","description":"Filter by environment. Pass up to 100 values, comma-separated or by\nrepeating the parameter. Matched exactly as stored.\n\nNot restricted to a fixed list, so an unrecognised value returns no results\nrather than an error, though in practice only the four values below are\nstored.\n","style":"form","explode":false,"schema":{"type":"array","maxItems":100,"uniqueItems":true,"items":{"type":"string","enum":["dev","staging","production","working-copy"],"uniqueKey":"items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Filter by environment. Pass up to 100 values, comma-separated or by\nrepeating the parameter. Matched exactly as stored.\n\nNot restricted to a fixed list, so an unrecognised value returns no results\nrather than an error, though in practice only the four values below are\nstored.\n","uniqueKey":"","typeLabel":"enum\u003cstring>[]"}},"d316fb86-2899-42c1-bb35-d6a66eeca462":{"name":"traceDimensions[key]","in":"query","description":"Filter by a custom dimension recorded against the session. Replace `key` with\nthe dimension name — for example `traceDimensions[tier]=gold`. Repeat with\ndifferent keys to require all of them. Values match exactly.\n","allowReserved":true,"schema":{"type":"string","description":"Filter by a custom dimension recorded against the session. Replace `key` with\nthe dimension name — for example `traceDimensions[tier]=gold`. Repeat with\ndifferent keys to require all of them. Values match exactly.\n","uniqueKey":"","typeLabel":"string"},"x-dynamic-parameter":true},"0b12cca1-3834-4ebe-88f6-c6c3e9fcd90e":{"name":"cursor","in":"query","description":"Pass the `nextCursor` value from the previous response to get the next page.\nDo not use together with `offset` or `skip`.\n","schema":{"type":"string","minLength":1,"description":"Pass the `nextCursor` value from the previous response to get the next page.\nDo not use together with `offset` or `skip`.\n","uniqueKey":"","typeLabel":"string"}},"3a52e822-2011-4894-a6bc-59fd5f5d0aeb":{"name":"offset","in":"query","description":"Number of messages to skip before the first one returned. Do not use\ntogether with `cursor` or `skip`.\n","schema":{"type":"integer","minimum":0,"default":0,"description":"Number of messages to skip before the first one returned. Do not use\ntogether with `cursor` or `skip`.\n","uniqueKey":"","typeLabel":"integer"}},"d5921f40-e5c4-4359-82b4-9b0f248637d6":{"name":"skip","in":"query","deprecated":true,"description":"An older name for `offset`, kept for compatibility. Prefer `offset`. Do not\nuse together with `cursor` or `offset`.\n","schema":{"type":"integer","minimum":0,"description":"An older name for `offset`, kept for compatibility. Prefer `offset`. Do not\nuse together with `cursor` or `offset`.\n","uniqueKey":"","typeLabel":"integer"}},"4a9c3aff-1999-457b-bb61-c51a0ccc1987":{"name":"limit","in":"query","description":"How many messages to return. A page may come back with fewer than requested\nso the response stays within the 1 MiB size limit — check `hasMore` rather\nthan assuming a short page is the last one.\n","schema":{"type":"integer","minimum":1,"maximum":10000,"default":100,"description":"How many messages to return. A page may come back with fewer than requested\nso the response stays within the 1 MiB size limit — check `hasMore` rather\nthan assuming a short page is the last one.\n","uniqueKey":"","typeLabel":"integer"}},"51aa0c75-f01c-4f88-ae4d-2b106e5ac4df":{"name":"direction","in":"query","description":"Sort order by time: `asc` for oldest first, `desc` for newest first.\n","schema":{"type":"string","enum":["asc","desc"],"default":"asc","description":"Sort order by time: `asc` for oldest first, `desc` for newest first.\n","uniqueKey":"","typeLabel":"enum\u003cstring>"}}},"responses":{"8a16525c-4674-486a-9fb1-d9ab4a70283f":{"description":"Message page returned successfully.","headers":{"Cache-Control":{"schema":{"type":"string"},"example":"private, no-store, max-age=0"},"X-ABL-Encrypted":{"description":"Present with value `true` when the body is an `EncryptedResponse`. Absent otherwise.","schema":{"type":"string","enum":["true"]}}},"content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["success","totalRecords","hasMore","offset","limit","messages","nextCursor"],"properties":{"success":{"type":"boolean","const":true,"description":"Always true on a successful response.\n","isRequired":true,"uniqueKey":"oneOf.0.success","typeLabel":"boolean"},"totalRecords":{"type":"integer","minimum":0,"description":"Total number of messages matching your filters, across all pages.\n","isRequired":true,"uniqueKey":"oneOf.0.totalRecords","typeLabel":"integer"},"hasMore":{"type":"boolean","description":"Whether more pages are available after this one.\n","isRequired":true,"uniqueKey":"oneOf.0.hasMore","typeLabel":"boolean"},"offset":{"type":"integer","minimum":0,"description":"The offset applied to this response.\n","isRequired":true,"uniqueKey":"oneOf.0.offset","typeLabel":"integer"},"limit":{"type":"integer","minimum":1,"maximum":10000,"description":"The page size applied to this response.\n","isRequired":true,"uniqueKey":"oneOf.0.limit","typeLabel":"integer"},"messages":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["id","sessionId","type","role","content","channel","sourceChannel","environment","channelUId","traceDimensions","traceId","attachmentIds","hasPII","metadata","sequence","messageOrder","orderingVersion","agentName","timestamp","createdAt","updatedAt"],"properties":{"id":{"type":"string","description":"The message identifier.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].id","typeLabel":"string"},"sessionId":{"type":"string","description":"The conversation this message belongs to.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].sessionId","typeLabel":"string"},"type":{"type":"string","enum":["incoming","outgoing","system","tool"],"description":"Direction of the message: `incoming` from the end user, `outgoing` to the end user,\n`system` for platform messages, `tool` for tool output.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"role":{"type":"string","enum":["user","assistant","system","tool"],"description":"Who the message is attributed to, in the usual chat sense.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].role","typeLabel":"enum\u003cstring>"},"content":{"type":"string","description":"The message text, after the project PII policy has been applied.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].content","typeLabel":"string"},"channel":{"type":"string","description":"Stored session channel, matched exactly by the `channel` filter.","enum":["","http_async","slack","line","msteams","whatsapp","messenger","instagram","twilio_sms","zendesk","telegram","genesys","genesys_open_messaging","ai4w","kore_agent_assist","email","voice_vxml","korevg","audiocodes","genesys_audio_connector","voice_pipeline","voice_realtime","voice","voice_twilio","voice_livekit","ag_ui","a2a","sdk_websocket","web_debug","web_chat","api","http"],"isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].channel","typeLabel":"enum\u003cstring>"},"sourceChannel":{"type":"string","description":"The channel this individual message came in on. This can differ from the\nsession's `channel` if the conversation moved between channels part-way\nthrough.\n","enum":["","http_async","slack","line","msteams","whatsapp","messenger","instagram","twilio_sms","zendesk","telegram","genesys","genesys_open_messaging","ai4w","kore_agent_assist","email","voice_vxml","korevg","audiocodes","genesys_audio_connector","voice_pipeline","voice_realtime","voice","voice_twilio","voice_livekit","ag_ui","a2a","sdk_websocket","web_debug","web_chat","api","http"],"isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].sourceChannel","typeLabel":"enum\u003cstring>"},"environment":{"oneOf":[{"description":"The environment the conversation ran in. Null when not recorded.\n","type":"string","enum":["dev","staging","production","working-copy",null],"isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].environment.oneOf.0","typeLabel":"enum\u003cstring>"},{"description":"The environment the conversation ran in. Null when not recorded.\n","type":"null","enum":["dev","staging","production","working-copy",null],"isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].environment.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].environment","typeLabel":"enum\u003cstring> | null"},"channelUId":{"oneOf":[{"type":"string","description":"Resolved end-user identity for the channel session.","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].channelUId.oneOf.0","typeLabel":"string"},{"type":"null","description":"Resolved end-user identity for the channel session.","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].channelUId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].channelUId","typeLabel":"string | null"},"traceDimensions":{"oneOf":[{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.0.messages.items.[INDEX].traceDimensions.oneOf.0.additionalProperties","typeLabel":"string"},"description":"Custom dimensions recorded against the session, as key/value pairs.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].traceDimensions.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":{"type":"string","uniqueKey":"oneOf.0.messages.items.[INDEX].traceDimensions.oneOf.1.additionalProperties","typeLabel":"string"},"description":"Custom dimensions recorded against the session, as key/value pairs.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].traceDimensions.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].traceDimensions","typeLabel":"object | null"},"traceId":{"oneOf":[{"type":"string","description":"The trace covering how this message was produced. Use it with the traces endpoint.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].traceId.oneOf.0","typeLabel":"string"},{"type":"null","description":"The trace covering how this message was produced. Use it with the traces endpoint.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].traceId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].traceId","typeLabel":"string | null"},"attachmentIds":{"type":"array","items":{"type":"string","uniqueKey":"oneOf.0.messages.items.[INDEX].attachmentIds.items.[INDEX]","typeLabel":"string"},"description":"Identifiers of any files attached to the message.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].attachmentIds","typeLabel":"string[]"},"hasPII":{"type":"boolean","description":"Whether personal information was detected in this message. When true, the content you\nsee may be masked.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].hasPII","typeLabel":"boolean"},"metadata":{"type":"object","additionalProperties":true,"description":"Sanitized message metadata. Assistant messages include normalized response provenance.","properties":{"isLlmGenerated":{"type":"boolean","description":"Whether this message was generated by a model rather than scripted.\n","uniqueKey":"oneOf.0.messages.items.[INDEX].metadata.isLlmGenerated","typeLabel":"boolean"},"responseProvenance":{"type":"object","additionalProperties":false,"required":["schemaVersion","kind","disclaimerRequired","usedLlmInternally"],"properties":{"schemaVersion":{"type":"integer","const":1,"description":"Version of this provenance metadata contract.","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].metadata.responseProvenance.schemaVersion","typeLabel":"integer"},"kind":{"type":"string","enum":["scripted","llm","mixed"],"description":"`scripted` for authored output, `llm` for model-generated output, or `mixed` when both contributed.","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].metadata.responseProvenance.kind","typeLabel":"enum\u003cstring>"},"disclaimerRequired":{"type":"boolean","description":"True when the customer-visible response was LLM-generated.","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].metadata.responseProvenance.disclaimerRequired","typeLabel":"boolean"},"usedLlmInternally":{"type":"boolean","description":"Whether an LLM contributed internally","including to scripted final output.":null,"isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].metadata.responseProvenance.usedLlmInternally","typeLabel":"boolean"}},"uniqueKey":"oneOf.0.messages.items.[INDEX].metadata.responseProvenance","typeLabel":"object"}},"isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].metadata","typeLabel":"object"},"sequence":{"oneOf":[{"type":"number","minimum":0,"description":"Position of the message within its session, starting at 1.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].sequence.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"Position of the message within its session, starting at 1.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].sequence.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].sequence","typeLabel":"number | null"},"messageOrder":{"oneOf":[{"type":"number","description":"Durable ordering position recorded when the message was written. Null for\nmessages stored before durable ordering was recorded.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].messageOrder.oneOf.0","typeLabel":"number"},{"type":"null","description":"Durable ordering position recorded when the message was written. Null for\nmessages stored before durable ordering was recorded.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].messageOrder.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].messageOrder","typeLabel":"number | null"},"orderingVersion":{"type":"number","minimum":1,"description":"Version of the ordering scheme behind `messageOrder`. `1` when no version was\nrecorded.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].orderingVersion","typeLabel":"number"},"agentName":{"oneOf":[{"type":"string","description":"The agent that produced this message. Null for user messages.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].agentName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The agent that produced this message. Null for user messages.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].agentName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].agentName","typeLabel":"string | null"},"timestamp":{"type":"string","format":"date-time","description":"When the message was sent.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].timestamp","typeLabel":"string\u003cdate-time>"},"createdAt":{"type":"string","format":"date-time","description":"When the message record was created.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].createdAt","typeLabel":"string\u003cdate-time>"},"updatedAt":{"type":"string","format":"date-time","description":"When the message record was last changed.\n","isRequired":true,"uniqueKey":"oneOf.0.messages.items.[INDEX].updatedAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.0.messages.items.[INDEX]","typeLabel":"object"},"description":"The messages on this page.\n","isRequired":true,"uniqueKey":"oneOf.0.messages","typeLabel":"object[]"},"nextCursor":{"oneOf":[{"type":"string","description":"Opaque cursor for the next page.","isRequired":true,"uniqueKey":"oneOf.0.nextCursor.oneOf.0","typeLabel":"string"},{"type":"null","description":"Opaque cursor for the next page.","isRequired":true,"uniqueKey":"oneOf.0.nextCursor.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.nextCursor","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Response body for a Platform Key with response encryption on (signalled by the\n`X-ABL-Encrypted: true` header): a JWE in flattened JSON serialization. The\ndecrypted plaintext is the JSON body documented for that status code.\n","required":["protected","encrypted_key","iv","ciphertext","tag"],"properties":{"protected":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the protected header. Decodes to `ResponseProtectedHeader`.","isRequired":true,"uniqueKey":"oneOf.1.protected","typeLabel":"string"},"encrypted_key":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"The per-response AES-256 key, wrapped with the customer's RSA public key using RSA-OAEP-256.","isRequired":true,"uniqueKey":"oneOf.1.encrypted_key","typeLabel":"string"},"iv":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 12-byte AES-GCM IV (fresh per response).","isRequired":true,"uniqueKey":"oneOf.1.iv","typeLabel":"string"},"ciphertext":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the AES-256-GCM ciphertext.","isRequired":true,"uniqueKey":"oneOf.1.ciphertext","typeLabel":"string"},"tag":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 16-byte AES-GCM authentication tag.","isRequired":true,"uniqueKey":"oneOf.1.tag","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"example":{"success":true,"totalRecords":2,"hasMore":false,"offset":0,"limit":100,"messages":[{"id":"msg-01J4S8Y2","sessionId":"sess-01J4S8Y1","type":"incoming","role":"user","content":"Hello","channel":"web_chat","sourceChannel":"web_chat","environment":"production","channelUId":"contact-123","traceDimensions":{"accountTier":"gold"},"traceId":"trace-123","attachmentIds":[],"hasPII":false,"metadata":{"clientVersion":"1.4.2"},"sequence":1,"agentName":null,"timestamp":"2026-08-05T14:30:00.000Z","createdAt":"2026-08-05T14:30:00.120Z","updatedAt":"2026-08-05T14:30:00.120Z"},{"id":"msg-01J4S8Y3","sessionId":"sess-01J4S8Y1","type":"outgoing","role":"assistant","content":"How can I help?","channel":"web_chat","sourceChannel":"web_chat","environment":"production","channelUId":"contact-123","traceDimensions":{"accountTier":"gold"},"traceId":"trace-124","attachmentIds":[],"hasPII":false,"metadata":{"isLlmGenerated":true,"responseProvenance":{"schemaVersion":1,"kind":"llm","disclaimerRequired":true,"usedLlmInternally":true}},"sequence":2,"agentName":"Support Agent","timestamp":"2026-08-05T14:30:01.000Z","createdAt":"2026-08-05T14:30:01.100Z","updatedAt":"2026-08-05T14:30:01.100Z"}],"nextCursor":null},"examples":{"Example":{"title":"Example","value":{"success":true,"totalRecords":2,"hasMore":false,"offset":0,"limit":100,"messages":[{"id":"msg-01J4S8Y2","sessionId":"sess-01J4S8Y1","type":"incoming","role":"user","content":"Hello","channel":"web_chat","sourceChannel":"web_chat","environment":"production","channelUId":"contact-123","traceDimensions":{"accountTier":"gold"},"traceId":"trace-123","attachmentIds":[],"hasPII":false,"metadata":{"clientVersion":"1.4.2"},"sequence":1,"agentName":null,"timestamp":"2026-08-05T14:30:00.000Z","createdAt":"2026-08-05T14:30:00.120Z","updatedAt":"2026-08-05T14:30:00.120Z"},{"id":"msg-01J4S8Y3","sessionId":"sess-01J4S8Y1","type":"outgoing","role":"assistant","content":"How can I help?","channel":"web_chat","sourceChannel":"web_chat","environment":"production","channelUId":"contact-123","traceDimensions":{"accountTier":"gold"},"traceId":"trace-124","attachmentIds":[],"hasPII":false,"metadata":{"isLlmGenerated":true,"responseProvenance":{"schemaVersion":1,"kind":"llm","disclaimerRequired":true,"usedLlmInternally":true}},"sequence":2,"agentName":"Support Agent","timestamp":"2026-08-05T14:30:01.000Z","createdAt":"2026-08-05T14:30:01.100Z","updatedAt":"2026-08-05T14:30:01.100Z"}],"nextCursor":null}}},"exampleType":"examples"}},"exampleType":"examples"},"e97d54b2-4e42-464b-872a-2601c36326cf":{"description":"The request could not be understood. Common causes: an invalid or one-sided date\nrange, neither a date range nor `sessionIds` supplied, more than one of\n`cursor`, `offset`, and `skip` used together, too many filter values, or a\ndate-range query that would span more than 10,000 sessions. The `error.code`\nsays which.\n\nEncryption and POST-body errors also return 400: `ENCRYPTED_PAYLOAD_INVALID`\n(malformed, unexpected or undecryptable JWE, or a plain body for a\nrequest-encrypted key), `INVALID_REQUEST_BODY` (POST body is not a JSON object),\nand `INVALID_QUERY_PARAMETER` (unknown, null or nested POST body key, or a query\nstring on a POST).\n\n`INVALID_CALLER_NUMBER`: the `callerNumber` parameter is present but an entry is\nempty or has no letter or digit after cleanup (an empty value, only separators,\na trailing or doubled comma, only whitespace, invisible characters or\npunctuation such as `+`, or an empty POST array), is not a string, or is longer\nthan 512 characters. Any caller format, including bare\ndigits and national formats, is accepted. The message names the position of\nthe offending entry and never echoes it.\n","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["error"],"properties":{"error":{"description":"Details of what went wrong. `code` is a stable machine-readable value; `message` is\nhuman-readable.\n","type":"object","required":["code","message"],"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.message","typeLabel":"string"},"details":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.0.error.details","typeLabel":"object"}},"isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"object"},"success":{"type":"boolean","const":false,"description":"Always false on an error response.\n","uniqueKey":"oneOf.0.success","typeLabel":"boolean"},"message":{"type":"string","description":"Present on some authorization denials in addition to `error.message`.","uniqueKey":"oneOf.0.message","typeLabel":"string"},"required":{"oneOf":[{"type":"string","description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"oneOf.0.required.oneOf.0","typeLabel":"string"},{"type":"array","items":{"type":"string","uniqueKey":"oneOf.0.required.oneOf.1.items.[INDEX]","typeLabel":"string"},"description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"oneOf.0.required.oneOf.1","typeLabel":"string[]"}],"uniqueKey":"oneOf.0.required","typeLabel":"string | string[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Response body for a Platform Key with response encryption on (signalled by the\n`X-ABL-Encrypted: true` header): a JWE in flattened JSON serialization. The\ndecrypted plaintext is the JSON body documented for that status code.\n","required":["protected","encrypted_key","iv","ciphertext","tag"],"properties":{"protected":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the protected header. Decodes to `ResponseProtectedHeader`.","isRequired":true,"uniqueKey":"oneOf.1.protected","typeLabel":"string"},"encrypted_key":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"The per-response AES-256 key, wrapped with the customer's RSA public key using RSA-OAEP-256.","isRequired":true,"uniqueKey":"oneOf.1.encrypted_key","typeLabel":"string"},"iv":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 12-byte AES-GCM IV (fresh per response).","isRequired":true,"uniqueKey":"oneOf.1.iv","typeLabel":"string"},"ciphertext":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the AES-256-GCM ciphertext.","isRequired":true,"uniqueKey":"oneOf.1.ciphertext","typeLabel":"string"},"tag":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 16-byte AES-GCM authentication tag.","isRequired":true,"uniqueKey":"oneOf.1.tag","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>","details":{}},"success":false,"message":"\u003cstring>","required":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"2b1460e0-2c3d-41f9-9a63-e6c78979afed":{"description":"Missing or invalid `x-api-key`, or Authorization was supplied.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"description":"Details of what went wrong. `code` is a stable machine-readable value; `message` is\nhuman-readable.\n","type":"object","required":["code","message"],"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"details":{"type":"object","additionalProperties":true,"uniqueKey":"error.details","typeLabel":"object"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"success":{"type":"boolean","const":false,"description":"Always false on an error response.\n","uniqueKey":"success","typeLabel":"boolean"},"message":{"type":"string","description":"Present on some authorization denials in addition to `error.message`.","uniqueKey":"message","typeLabel":"string"},"required":{"oneOf":[{"type":"string","description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"required.oneOf.0","typeLabel":"string"},{"type":"array","items":{"type":"string","uniqueKey":"required.oneOf.1.items.[INDEX]","typeLabel":"string"},"description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"required.oneOf.1","typeLabel":"string[]"}],"uniqueKey":"required","typeLabel":"string | string[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>","details":{}},"success":false,"message":"\u003cstring>","required":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"f511e5de-f2b3-4434-bc29-101be542d152":{"description":"The key lacks `analytics:read` for its bound project, or (`CALLER_NUMBER_LOOKUP_DISABLED`)\nthe request used `callerNumber` while the project's reporting exposure config\ndisables the `identity` field group.\n","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["error"],"properties":{"error":{"description":"Details of what went wrong. `code` is a stable machine-readable value; `message` is\nhuman-readable.\n","type":"object","required":["code","message"],"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.message","typeLabel":"string"},"details":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.0.error.details","typeLabel":"object"}},"isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"object"},"success":{"type":"boolean","const":false,"description":"Always false on an error response.\n","uniqueKey":"oneOf.0.success","typeLabel":"boolean"},"message":{"type":"string","description":"Present on some authorization denials in addition to `error.message`.","uniqueKey":"oneOf.0.message","typeLabel":"string"},"required":{"oneOf":[{"type":"string","description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"oneOf.0.required.oneOf.0","typeLabel":"string"},{"type":"array","items":{"type":"string","uniqueKey":"oneOf.0.required.oneOf.1.items.[INDEX]","typeLabel":"string"},"description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"oneOf.0.required.oneOf.1","typeLabel":"string[]"}],"uniqueKey":"oneOf.0.required","typeLabel":"string | string[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Response body for a Platform Key with response encryption on (signalled by the\n`X-ABL-Encrypted: true` header): a JWE in flattened JSON serialization. The\ndecrypted plaintext is the JSON body documented for that status code.\n","required":["protected","encrypted_key","iv","ciphertext","tag"],"properties":{"protected":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the protected header. Decodes to `ResponseProtectedHeader`.","isRequired":true,"uniqueKey":"oneOf.1.protected","typeLabel":"string"},"encrypted_key":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"The per-response AES-256 key, wrapped with the customer's RSA public key using RSA-OAEP-256.","isRequired":true,"uniqueKey":"oneOf.1.encrypted_key","typeLabel":"string"},"iv":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 12-byte AES-GCM IV (fresh per response).","isRequired":true,"uniqueKey":"oneOf.1.iv","typeLabel":"string"},"ciphertext":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the AES-256-GCM ciphertext.","isRequired":true,"uniqueKey":"oneOf.1.ciphertext","typeLabel":"string"},"tag":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 16-byte AES-GCM authentication tag.","isRequired":true,"uniqueKey":"oneOf.1.tag","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>","details":{}},"success":false,"message":"\u003cstring>","required":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"1cb87f4e-e05c-4fbb-9727-333ab0e6caf5":{"description":"Project not found or concealed because it is outside the key's scope.","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["error"],"properties":{"error":{"description":"Details of what went wrong. `code` is a stable machine-readable value; `message` is\nhuman-readable.\n","type":"object","required":["code","message"],"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.message","typeLabel":"string"},"details":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.0.error.details","typeLabel":"object"}},"isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"object"},"success":{"type":"boolean","const":false,"description":"Always false on an error response.\n","uniqueKey":"oneOf.0.success","typeLabel":"boolean"},"message":{"type":"string","description":"Present on some authorization denials in addition to `error.message`.","uniqueKey":"oneOf.0.message","typeLabel":"string"},"required":{"oneOf":[{"type":"string","description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"oneOf.0.required.oneOf.0","typeLabel":"string"},{"type":"array","items":{"type":"string","uniqueKey":"oneOf.0.required.oneOf.1.items.[INDEX]","typeLabel":"string"},"description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"oneOf.0.required.oneOf.1","typeLabel":"string[]"}],"uniqueKey":"oneOf.0.required","typeLabel":"string | string[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Response body for a Platform Key with response encryption on (signalled by the\n`X-ABL-Encrypted: true` header): a JWE in flattened JSON serialization. The\ndecrypted plaintext is the JSON body documented for that status code.\n","required":["protected","encrypted_key","iv","ciphertext","tag"],"properties":{"protected":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the protected header. Decodes to `ResponseProtectedHeader`.","isRequired":true,"uniqueKey":"oneOf.1.protected","typeLabel":"string"},"encrypted_key":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"The per-response AES-256 key, wrapped with the customer's RSA public key using RSA-OAEP-256.","isRequired":true,"uniqueKey":"oneOf.1.encrypted_key","typeLabel":"string"},"iv":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 12-byte AES-GCM IV (fresh per response).","isRequired":true,"uniqueKey":"oneOf.1.iv","typeLabel":"string"},"ciphertext":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the AES-256-GCM ciphertext.","isRequired":true,"uniqueKey":"oneOf.1.ciphertext","typeLabel":"string"},"tag":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 16-byte AES-GCM authentication tag.","isRequired":true,"uniqueKey":"oneOf.1.tag","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>","details":{}},"success":false,"message":"\u003cstring>","required":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"a45b32cf-5b38-4046-b5fd-352dce7e19c6":{"description":"A single rendered message cannot fit within the 1 MiB response budget.","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["error"],"properties":{"error":{"description":"Details of what went wrong. `code` is a stable machine-readable value; `message` is\nhuman-readable.\n","type":"object","required":["code","message"],"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.message","typeLabel":"string"},"details":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.0.error.details","typeLabel":"object"}},"isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"object"},"success":{"type":"boolean","const":false,"description":"Always false on an error response.\n","uniqueKey":"oneOf.0.success","typeLabel":"boolean"},"message":{"type":"string","description":"Present on some authorization denials in addition to `error.message`.","uniqueKey":"oneOf.0.message","typeLabel":"string"},"required":{"oneOf":[{"type":"string","description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"oneOf.0.required.oneOf.0","typeLabel":"string"},{"type":"array","items":{"type":"string","uniqueKey":"oneOf.0.required.oneOf.1.items.[INDEX]","typeLabel":"string"},"description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"oneOf.0.required.oneOf.1","typeLabel":"string[]"}],"uniqueKey":"oneOf.0.required","typeLabel":"string | string[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Response body for a Platform Key with response encryption on (signalled by the\n`X-ABL-Encrypted: true` header): a JWE in flattened JSON serialization. The\ndecrypted plaintext is the JSON body documented for that status code.\n","required":["protected","encrypted_key","iv","ciphertext","tag"],"properties":{"protected":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the protected header. Decodes to `ResponseProtectedHeader`.","isRequired":true,"uniqueKey":"oneOf.1.protected","typeLabel":"string"},"encrypted_key":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"The per-response AES-256 key, wrapped with the customer's RSA public key using RSA-OAEP-256.","isRequired":true,"uniqueKey":"oneOf.1.encrypted_key","typeLabel":"string"},"iv":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 12-byte AES-GCM IV (fresh per response).","isRequired":true,"uniqueKey":"oneOf.1.iv","typeLabel":"string"},"ciphertext":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the AES-256-GCM ciphertext.","isRequired":true,"uniqueKey":"oneOf.1.ciphertext","typeLabel":"string"},"tag":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 16-byte AES-GCM authentication tag.","isRequired":true,"uniqueKey":"oneOf.1.tag","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>","details":{}},"success":false,"message":"\u003cstring>","required":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"040b54e5-be9c-489d-94dc-7bf3b258e726":{"description":"Tenant request rate limit exceeded.","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["error"],"properties":{"error":{"description":"Details of what went wrong. `code` is a stable machine-readable value; `message` is\nhuman-readable.\n","type":"object","required":["code","message"],"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.message","typeLabel":"string"},"details":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.0.error.details","typeLabel":"object"}},"isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"object"},"success":{"type":"boolean","const":false,"description":"Always false on an error response.\n","uniqueKey":"oneOf.0.success","typeLabel":"boolean"},"message":{"type":"string","description":"Present on some authorization denials in addition to `error.message`.","uniqueKey":"oneOf.0.message","typeLabel":"string"},"required":{"oneOf":[{"type":"string","description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"oneOf.0.required.oneOf.0","typeLabel":"string"},{"type":"array","items":{"type":"string","uniqueKey":"oneOf.0.required.oneOf.1.items.[INDEX]","typeLabel":"string"},"description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"oneOf.0.required.oneOf.1","typeLabel":"string[]"}],"uniqueKey":"oneOf.0.required","typeLabel":"string | string[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Response body for a Platform Key with response encryption on (signalled by the\n`X-ABL-Encrypted: true` header): a JWE in flattened JSON serialization. The\ndecrypted plaintext is the JSON body documented for that status code.\n","required":["protected","encrypted_key","iv","ciphertext","tag"],"properties":{"protected":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the protected header. Decodes to `ResponseProtectedHeader`.","isRequired":true,"uniqueKey":"oneOf.1.protected","typeLabel":"string"},"encrypted_key":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"The per-response AES-256 key, wrapped with the customer's RSA public key using RSA-OAEP-256.","isRequired":true,"uniqueKey":"oneOf.1.encrypted_key","typeLabel":"string"},"iv":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 12-byte AES-GCM IV (fresh per response).","isRequired":true,"uniqueKey":"oneOf.1.iv","typeLabel":"string"},"ciphertext":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the AES-256-GCM ciphertext.","isRequired":true,"uniqueKey":"oneOf.1.ciphertext","typeLabel":"string"},"tag":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 16-byte AES-GCM authentication tag.","isRequired":true,"uniqueKey":"oneOf.1.tag","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>","details":{}},"success":false,"message":"\u003cstring>","required":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"d027eb10-73d2-47aa-aaff-7c7a2275e46e":{"description":"Unexpected conversation-history failure.\n\nAlso returned, with a content-free body, when a response cannot be encrypted for\na response-encrypted key.\n","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["error"],"properties":{"error":{"description":"Details of what went wrong. `code` is a stable machine-readable value; `message` is\nhuman-readable.\n","type":"object","required":["code","message"],"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.message","typeLabel":"string"},"details":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.0.error.details","typeLabel":"object"}},"isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"object"},"success":{"type":"boolean","const":false,"description":"Always false on an error response.\n","uniqueKey":"oneOf.0.success","typeLabel":"boolean"},"message":{"type":"string","description":"Present on some authorization denials in addition to `error.message`.","uniqueKey":"oneOf.0.message","typeLabel":"string"},"required":{"oneOf":[{"type":"string","description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"oneOf.0.required.oneOf.0","typeLabel":"string"},{"type":"array","items":{"type":"string","uniqueKey":"oneOf.0.required.oneOf.1.items.[INDEX]","typeLabel":"string"},"description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"oneOf.0.required.oneOf.1","typeLabel":"string[]"}],"uniqueKey":"oneOf.0.required","typeLabel":"string | string[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Response body for a Platform Key with response encryption on (signalled by the\n`X-ABL-Encrypted: true` header): a JWE in flattened JSON serialization. The\ndecrypted plaintext is the JSON body documented for that status code.\n","required":["protected","encrypted_key","iv","ciphertext","tag"],"properties":{"protected":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the protected header. Decodes to `ResponseProtectedHeader`.","isRequired":true,"uniqueKey":"oneOf.1.protected","typeLabel":"string"},"encrypted_key":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"The per-response AES-256 key, wrapped with the customer's RSA public key using RSA-OAEP-256.","isRequired":true,"uniqueKey":"oneOf.1.encrypted_key","typeLabel":"string"},"iv":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 12-byte AES-GCM IV (fresh per response).","isRequired":true,"uniqueKey":"oneOf.1.iv","typeLabel":"string"},"ciphertext":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the AES-256-GCM ciphertext.","isRequired":true,"uniqueKey":"oneOf.1.ciphertext","typeLabel":"string"},"tag":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 16-byte AES-GCM authentication tag.","isRequired":true,"uniqueKey":"oneOf.1.tag","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>","details":{}},"success":false,"message":"\u003cstring>","required":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"ec12cb99-9598-4170-ac95-8f58da3b6bc5":{"description":"Conversation-history or trace-dimension backing store unavailable.\n\n`ENCRYPTION_CONFIG_UNAVAILABLE` (with `Retry-After: 30`) means the Platform\nKey's payload-encryption configuration could not be read. There is no plaintext\nfallback.\n","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["error"],"properties":{"error":{"description":"Details of what went wrong. `code` is a stable machine-readable value; `message` is\nhuman-readable.\n","type":"object","required":["code","message"],"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.message","typeLabel":"string"},"details":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.0.error.details","typeLabel":"object"}},"isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"object"},"success":{"type":"boolean","const":false,"description":"Always false on an error response.\n","uniqueKey":"oneOf.0.success","typeLabel":"boolean"},"message":{"type":"string","description":"Present on some authorization denials in addition to `error.message`.","uniqueKey":"oneOf.0.message","typeLabel":"string"},"required":{"oneOf":[{"type":"string","description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"oneOf.0.required.oneOf.0","typeLabel":"string"},{"type":"array","items":{"type":"string","uniqueKey":"oneOf.0.required.oneOf.1.items.[INDEX]","typeLabel":"string"},"description":"Permission(s) the caller was missing. Present on authorization denials.","uniqueKey":"oneOf.0.required.oneOf.1","typeLabel":"string[]"}],"uniqueKey":"oneOf.0.required","typeLabel":"string | string[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Response body for a Platform Key with response encryption on (signalled by the\n`X-ABL-Encrypted: true` header): a JWE in flattened JSON serialization. The\ndecrypted plaintext is the JSON body documented for that status code.\n","required":["protected","encrypted_key","iv","ciphertext","tag"],"properties":{"protected":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the protected header. Decodes to `ResponseProtectedHeader`.","isRequired":true,"uniqueKey":"oneOf.1.protected","typeLabel":"string"},"encrypted_key":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"The per-response AES-256 key, wrapped with the customer's RSA public key using RSA-OAEP-256.","isRequired":true,"uniqueKey":"oneOf.1.encrypted_key","typeLabel":"string"},"iv":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 12-byte AES-GCM IV (fresh per response).","isRequired":true,"uniqueKey":"oneOf.1.iv","typeLabel":"string"},"ciphertext":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the AES-256-GCM ciphertext.","isRequired":true,"uniqueKey":"oneOf.1.ciphertext","typeLabel":"string"},"tag":{"type":"string","pattern":"^[A-Za-z0-9_-]+$","description":"base64url of the 16-byte AES-GCM authentication tag.","isRequired":true,"uniqueKey":"oneOf.1.tag","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>","details":{}},"success":false,"message":"\u003cstring>","required":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"11da6ef2-4a6b-4a2c-930c-dbf4e32a982d":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key","description":"Project-bound API key. Do not send an Authorization header.","scopes":[],"schemeName":"ApiKeyAuth"}}},"servers":{"c106c4cb-570f-410d-a7d4-6a92ccca8982":{"url":"https://{host}","variables":{"host":{"default":"runtime.example.com"}}}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-api-key","description":"Project-bound API key. Do not send an Authorization header.","scopes":[],"schemeName":"ApiKeyAuth"},"schema":{"title":"x-api-key","type":"string","description":"Project-bound API key. Do not send an Authorization header.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyAuth","name":"x-api-key"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"agent-platform/api-specs/messages.yaml"},"subdomain":"koreai","siteName":"Kore.ai Docs","title":"List conversation messages - Kore.ai Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-08T18:03:15.780Z","originalFileLocation":"agent-platform/api-reference/analytics-list-conversation-messages.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=\"Messages are ordered by time, then by message ID to keep the order stable. Different filters combine with AND, and multiple values in the same filter combine with OR. A date-range query with no other filter that would span more than 10,000 sessions is rejected with 400, so narrow the range or add sessionIds for busy projects.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Kore.ai Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/koreai/76UiN88-8Y-QZO7w/_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/koreai/76UiN88-8Y-QZO7w/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/koreai/76UiN88-8Y-QZO7w/_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/koreai/76UiN88-8Y-QZO7w/_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/koreai/76UiN88-8Y-QZO7w/_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/koreai/76UiN88-8Y-QZO7w/_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/koreai/76UiN88-8Y-QZO7w/_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/koreai/76UiN88-8Y-QZO7w/_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/koreai/76UiN88-8Y-QZO7w/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"List conversation messages - Kore.ai Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Messages are ordered by time, then by message ID to keep the order stable. Different filters combine with AND, and multiple values in the same filter combine with OR. A date-range query with no other filter that would span more than 10,000 sessions is rejected with 400, so narrow the range or add sessionIds for busy projects.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Kore.ai Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.kore.ai/agent-platform/api-reference/analytics-list-conversation-messages\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://koreai.mintlify.site/_mintlify/api/og/v2?division=Analytics+APIs\u0026amp;title=List+conversation+messages\u0026amp;description=Messages+are+ordered+by+time%2C+then+by+message+ID+to+keep+the+order+stable.%0ADifferent+filters+combine+with+AND%2C+and+multiple+values+in+the+same+filter%0Acombine+wi\u0026amp;theme=8ca549275fbf7c6d9f9b93e2\u0026amp;signature=e1d5eafaf840a97f383dc033c64c18051b0dee40b92b968e2e434020dd77e06a\">\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=\"List conversation messages - Kore.ai Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Messages are ordered by time, then by message ID to keep the order stable. Different filters combine with AND, and multiple values in the same filter combine with OR. A date-range query with no other filter that would span more than 10,000 sessions is rejected with 400, so narrow the range or add sessionIds for busy projects.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://koreai.mintlify.site/_mintlify/api/og/v2?division=Analytics+APIs\u0026amp;title=List+conversation+messages\u0026amp;description=Messages+are+ordered+by+time%2C+then+by+message+ID+to+keep+the+order+stable.%0ADifferent+filters+combine+with+AND%2C+and+multiple+values+in+the+same+filter%0Acombine+wi\u0026amp;theme=8ca549275fbf7c6d9f9b93e2\u0026amp;signature=e1d5eafaf840a97f383dc033c64c18051b0dee40b92b968e2e434020dd77e06a\">\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/koreai/76UiN88-8Y-QZO7w/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Kore.ai Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#16A34A\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.kore.ai/agent-platform/api-reference/analytics-list-conversation-messages\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/agent-platform/api-reference/analytics-list-conversation-messages.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.kore.ai/#organization\",\"name\":\"Kore.ai Docs\",\"url\":\"https://docs.kore.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/koreai/0qAbPzQhx-4ILs7Q/assets/koreailogo-black.svg?fit=max\u0026auto=format\u0026n=0qAbPzQhx-4ILs7Q\u0026q=85\u0026s=b04520c55b7651e03e614e156f879b46\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.kore.ai#website\",\"name\":\"Kore.ai Docs\",\"url\":\"https://docs.kore.ai\",\"publisher\":{\"@id\":\"https://docs.kore.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.kore.ai/agent-platform/api-reference/analytics-list-conversation-messages#webpage\",\"url\":\"https://docs.kore.ai/agent-platform/api-reference/analytics-list-conversation-messages\",\"name\":\"List conversation messages\",\"description\":\"Messages are ordered by time, then by message ID to keep the order stable. Different filters combine with AND, and multiple values in the same filter combine with OR. A date-range query with no other filter that would span more than 10,000 sessions is rejected with 400, so narrow the range or add sessionIds for busy projects.\",\"dateModified\":\"2026-10-08T18:03:15.780Z\",\"isPartOf\":{\"@id\":\"https://docs.kore.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.kore.ai/agent-platform/api-reference/analytics-list-conversation-messages#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.kore.ai/agent-platform/api-reference/analytics-list-conversation-messages#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"APIs\",\"item\":\"https://docs.kore.ai/agent-platform/api-reference/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Analytics APIs\",\"item\":\"https://docs.kore.ai/agent-platform/api-reference/analytics-list-session-summaries\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"List conversation messages\",\"item\":\"https://docs.kore.ai/agent-platform/api-reference/analytics-list-conversation-messages\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.kore.ai/agent-platform/api-reference/analytics-list-conversation-messages#apireference\",\"headline\":\"List conversation messages\",\"name\":\"List conversation messages\",\"description\":\"Messages are ordered by time, then by message ID to keep the order stable. Different filters combine with AND, and multiple values in the same filter combine with OR. A date-range query with no other filter that would span more than 10,000 sessions is rejected with 400, so narrow the range or add sessionIds for busy projects.\",\"url\":\"https://docs.kore.ai/agent-platform/api-reference/analytics-list-conversation-messages\",\"mainEntityOfPage\":{\"@id\":\"https://docs.kore.ai/agent-platform/api-reference/analytics-list-conversation-messages#webpage\"},\"dateModified\":\"2026-10-08T18:03:15.780Z\",\"publisher\":{\"@id\":\"https://docs.kore.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.kore.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Kore.ai Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Kore.ai Docs","nav":{"global":null,"tabs":[{"tab":"Home","icon":"house","pages":[{"title":"Home","href":"/home"}]},{"tab":"Guide","icon":"book","pages":[{"title":"Guide","href":"/agent-platform"}]},{"tab":"ABL","icon":"laptop-code","pages":[{"title":"ABL","href":"/agent-platform/abl/reference/language-overview"}]},{"tab":"CLI and MCP","icon":"terminal","pages":[{"title":"CLI and MCP","href":"/agent-platform/cli"}]},{"tab":"APIs and SDK","icon":"plug","pages":[{"group":"APIs","pages":[{"title":"Artemis API overview","sidebarTitle":"Overview","href":"/agent-platform/api-reference/overview"},{"group":"Analytics APIs","expanded":false,"pages":[{"title":"List session summaries","openapi":"agent-platform/api-specs/sessions.yaml get /api/public/analytics/projects/{projectId}/sessions","href":"/agent-platform/api-reference/analytics-list-session-summaries"},{"title":"List session summaries using JWE payload","openapi":"agent-platform/api-specs/sessions.yaml post /api/public/analytics/projects/{projectId}/sessions","href":"/agent-platform/api-reference/analytics-list-session-summaries-with-encrypted-payload"},{"title":"List trace events","openapi":"agent-platform/api-specs/traces.yaml get /api/public/analytics/projects/{projectId}/traces","href":"/agent-platform/api-reference/analytics-list-traces"},{"title":"List trace events using JWE payload","openapi":"agent-platform/api-specs/traces.yaml post /api/public/analytics/projects/{projectId}/traces","href":"/agent-platform/api-reference/analytics-list-traces-with-encrypted-payload"},{"title":"List LLM calls","openapi":"agent-platform/api-specs/llm-ledger.yaml get /api/public/analytics/projects/{projectId}/llm-ledger","href":"/agent-platform/api-reference/analytics-list-llm-calls"},{"title":"List LLM calls using JWE payload","openapi":"agent-platform/api-specs/llm-ledger.yaml post /api/public/analytics/projects/{projectId}/llm-ledger","description":"POST form of `GET` on this path. It accepts the same parameters as a flat JSON\nbody (`LlmLedgerQueryBody`) instead of a query string, and returns the same response.\nUse it when the request parameters must be encrypted. See \"Sending parameters\nin a POST body\" and \"Payload encryption\" in the API description.\n\n- Request encryption off: send `LlmLedgerQueryBody` as `application/json`.\n- Request encryption on: send the same object encrypted as an\n `EncryptedRequest`, preferably as `application/jose+json`.\n- Response encryption on: every response except `401` is an\n `EncryptedResponse` with `X-ABL-Encrypted: true`.\n","href":"/agent-platform/api-reference/analytics-list-llm-calls-with-encrypted-payload"},{"title":"List conversation messages","openapi":"agent-platform/api-specs/messages.yaml get /api/public/analytics/projects/{projectId}/conversation-history","href":"/agent-platform/api-reference/analytics-list-conversation-messages"},{"title":"List conversation messages using JWE payload","openapi":"agent-platform/api-specs/messages.yaml post /api/public/analytics/projects/{projectId}/conversation-history","description":"POST form of `GET` on this path. It accepts the same parameters as a flat JSON\nbody (`ConversationHistoryQueryBody`) instead of a query string, and returns the same response.\nUse it when the request parameters must be encrypted. See \"Sending parameters\nin a POST body\" and \"Payload encryption\" in the API description.\n\n- Request encryption off: send `ConversationHistoryQueryBody` as `application/json`.\n- Request encryption on: send the same object encrypted as an\n `EncryptedRequest`, preferably as `application/jose+json`.\n- Response encryption on: every response except `401` is an\n `EncryptedResponse` with `X-ABL-Encrypted: true`.\n","href":"/agent-platform/api-reference/analytics-list-conversation-messages-with-encrypted-payload"}]},{"group":"Project APIs","expanded":false,"pages":[{"title":"Get project import status","openapi":"agent-platform/api-specs/project-import-export.yaml get /v1/projects/{projectId}/export/{exportId}","href":"/agent-platform/api-reference/project-export-get"},{"title":"Start project export","openapi":"agent-platform/api-specs/project-import-export.yaml post /v1/projects/{projectId}/export","href":"/agent-platform/api-reference/project-export-post"},{"title":"Get project import status","openapi":"agent-platform/api-specs/project-import-export.yaml get /v1/projects/{projectId}/import/{importId}","href":"/agent-platform/api-reference/project-import-get"},{"title":"Start project import","openapi":"agent-platform/api-specs/project-import-export.yaml post /v1/projects/{projectId}/import","href":"/agent-platform/api-reference/project-import-post"}]},{"group":"Feedback APIs","expanded":false,"pages":[{"title":"List survey response","openapi":"agent-platform/api-specs/public-feedback-survey.yaml get /api/public/feedback/projects/{projectId}","href":"/agent-platform/api-reference/feedback-survey-list"},{"title":"Submit rating for survey","openapi":"agent-platform/api-specs/public-feedback-survey.yaml post /api/public/feedback/projects/{projectId}","href":"/agent-platform/api-reference/feedback-survey-submit-rating"}]},{"group":"Outbound calls APIs","expanded":false,"pages":[{"title":"Introduction to outbound dialing API","sidebarTitle":"Overview","href":"/agent-platform/api-reference/outbound-calls-overview"},{"title":"Place outbound calls","openapi":"agent-platform/api-specs/outbound-calls.yaml post /api/v1/project/{projectSlug}/{env}/outbound-calls","href":"/agent-platform/api-reference/outbound-calls-place"},{"title":"Events of outbound calls","openapi":"agent-platform/api-specs/outbound-calls.yaml get /api/v1/project/{projectSlug}/{env}/outbound-calls/{outboundCallId}/events ","href":"/agent-platform/api-reference/outbound-calls-events"},{"title":"Look-up a call by ID","openapi":"agent-platform/api-specs/outbound-calls.yaml get /api/v1/project/{projectSlug}/{env}/outbound-calls/{outboundCallId}","href":"/agent-platform/api-reference/outbound-calls-id"},{"title":"List outbound calls","openapi":"agent-platform/api-specs/outbound-calls.yaml get /api/v1/project/{projectSlug}/{env}/outbound-calls","href":"/agent-platform/api-reference/outbound-calls-listing"},{"title":"Summarize outbound calls","openapi":"agent-platform/api-specs/outbound-calls.yaml get /api/v1/project/{projectSlug}/{env}/outbound-calls/summary","href":"/agent-platform/api-reference/outbound-calls-summary"},{"title":"Search outbound calls","openapi":"agent-platform/api-specs/outbound-calls.yaml post /api/v1/project/{projectSlug}/{env}/outbound-calls/search","href":"/agent-platform/api-reference/outbound-calls-search"},{"title":"Terminate outbound calls","openapi":"agent-platform/api-specs/outbound-calls.yaml post /api/v1/project/{projectSlug}/{env}/outbound-calls/{outboundCallId}/terminate","href":"/agent-platform/api-reference/outbound-calls-terminate"}]},{"group":"Recording APIs","expanded":false,"pages":[{"title":"Get all recordings for a session","openapi":"agent-platform/api-specs/call-recordings.yaml get /api/public/recordings/projects/{projectId}/sessions/{sessionId}/recordings","href":"/agent-platform/api-reference/recording-fetch-calls-per-session"},{"title":"Stream a recording","openapi":"agent-platform/api-specs/call-recordings.yaml get /api/projects/{projectId}/recordings/{recordingId}/media/content/{mediaToken}","href":"/agent-platform/api-reference/recording-stream"}]},{"group":"Tools execution APIs","expanded":false,"pages":[{"title":"List the available project tools","openapi":"agent-platform/api-specs/tool-execution.yaml get /api/v1/project/{projectSlug}/tools","href":"/agent-platform/api-reference/tools-execute-table-tools-list"},{"title":"Describe a tool and its input schema","openapi":"agent-platform/api-specs/tool-execution.yaml get /api/v1/project/{projectSlug}/tools/{toolName}","href":"/agent-platform/api-reference/tools-execute-table-tools-retrieve"},{"title":"Execute a specific tool","openapi":"agent-platform/api-specs/tool-execution.yaml post /api/v1/project/{projectSlug}/tools/{toolName}/invoke","href":"/agent-platform/api-reference/tools-execute-table-tools-execute"}]}]},{"group":"SDKs","pages":[{"title":"Artemis Software Developer Kits (SDKs)","sidebarTitle":"Overview","href":"/agent-platform/sdk/overview"},{"group":"Web SDK","pages":[{"title":"Artemis Web SDK overview","sidebarTitle":"Overview","href":"/agent-platform/sdk/web-sdk"},{"title":"Web SDK end-to-end auth setup guide","sidebarTitle":"Set up auth","href":"/agent-platform/sdk/web-sdk-end-to-end-auth-setup"}]},{"title":"Artemis mobile SDK overview","sidebarTitle":"Mobile SDK","href":"/agent-platform/sdk/mobile-sdk"}]}]},{"tab":"Administration","icon":"gear","pages":[{"title":"Administration","href":"/agent-platform/administration/workspace-and-team"}]},{"tab":"Changelog","icon":"rectangle-list","pages":[{"title":"Changelog","href":"/agent-platform/release-notes/recent-updates"}]},{"tab":"Solutions","icon":"box-archive","pages":[{"title":"Solutions","href":"/ai-for-service/solutions-overview"}]}]},"basePath":"","title":"List conversation messages - Kore.ai Docs","buildId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","deploymentId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CBsVopKK.js","utils-DZAk68jJ.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-D32AYZrP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-D_A5_cny.js","snippetPresets-xNRfS9th.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BIB25-tq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CydJ4w4j.js","shallow-CYPBeQSG.js","getApiPlaygroundDisplay-A5xJVBOu.js","CodeSnippet-BVRTgi3m.js","CodeSnippets-DjD6BSlt.js","Page-Dr40SSJq.js","getPastedJson-D4V4JyrR.js","icon-uhcnG22T.js","MethodPill-CM-ZQdGH.js","DuplicateIcon-B_WnOiNf.js","createIcon-CJsb8utt.js","DynamicMarkdown-D-2HDKEp.js","SectionHeading-KP5xmMgQ.js","axios-vUo_bRtp.js","Markdown-D_k0dg6k.js","clsx-DK3K4Z1S.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-DE3EVdvd.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-fN9H9n9g.js"]}