Optional 1–255 character key for safe retries. The same key and body return the first voice memo; the same key with a different body is refused with 409.
{"docsConfig":{"theme":"luma","$schema":"https://mintlify.com/docs.json","name":"Relay","description":"Relay API v1 documentation.","colors":{"primary":"#006BE6","light":"#4DA3FF","dark":"#007EFF"},"logo":{"light":"https://mintcdn.com/relay-staging/fjL9_TNOlSXF6Cqt/logo/light.png?fit=max\u0026auto=format\u0026n=fjL9_TNOlSXF6Cqt\u0026q=85\u0026s=66c2d390ee2afe0b0d1d99bc84b1ca0d","dark":"https://mintcdn.com/relay-staging/YFXuCpEIcllu8dZZ/logo/dark.png?fit=max\u0026auto=format\u0026n=YFXuCpEIcllu8dZZ\u0026q=85\u0026s=7c2ce728bd59af19440a86a1e1235c16","href":"/"},"favicon":"https://mintcdn.com/relay-staging/ACSI-_boGHGW-2RY/favicon-staging.png?fit=max\u0026auto=format\u0026n=ACSI-_boGHGW-2RY\u0026q=85\u0026s=55869334cfb76b3c7e5ff51626edddb8","api":{"params":{"expanded":"closed"},"playground":{"display":"simple"},"examples":{"defaults":"required","languages":["curl"]}},"appearance":{"default":"system","strict":false},"navbar":{"links":[{"icon":"copy","href":"/integrations/agent-prompt#relay-agent-prompt","label":"Copy agent prompt"}],"primary":{"type":"button","label":"Console","href":"https://console.staging.relayapp.im"}},"footer":{"socials":{"website":"https://relayapp.im","github":"https://github.com/relaymessenger"}},"seo":{"metatags":{"og:image":"https://docs.staging.relayapp.im/images/og-image.png","twitter:image":"https://docs.staging.relayapp.im/images/og-image.png","twitter:card":"summary_large_image"}},"fonts":{"family":"Figtree"},"contextual":{"options":["copy","view"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"relay-staging","hasAudioNarration":false,"actualSubdomain":"relay-staging","customDomains":["docs.staging.relayapp.im"],"gitSource":{"type":"github","owner":"relaymessenger","repo":"relay-docs","deployBranch":"staging","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ad9bfcb9679105657d485cb","collectionId":"6736b8e2-1e01-4508-8c21-19c70f62684f","liveDeploymentHistoryId":"6ad9bfcb9679105657d485cb","schemaVersion":"v3"},"entitlements":{},"buildId":"6ad9bfcb9679105657d485cb","clientVersion":"0.0.3990","searchFilterCounts":[{"language":"default","tag":"Guides","count":102},{"language":"default","tag":"CLI","count":92},{"language":"default","tag":"API Reference","count":68},{"language":"default","tag":"Chats","count":54},{"language":"default","tag":"Agents","count":28},{"language":"default","tag":"Webhook Events","count":28},{"language":"default","tag":"Error Codes","count":23},{"language":"default","tag":"Calls","count":20},{"language":"default","tag":"2xxx — Resource errors","count":19},{"language":"default","tag":"Webhooks","count":18}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","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":"per-site-search-delta","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":"editor-private-page-search","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":"editor-nav-generations","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":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":"@keyframes buttons-browser-rise{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes selection-appear{0%{opacity:0}to{opacity:1}}@keyframes selection-rise{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}:root{--relay-brand-blue:#0b75ff}html.dark img[src*=\"/images/brands/cline.svg\"],html.dark img[src*=\"/images/brands/elevenlabs.svg\"],html.dark img[src*=\"/images/brands/openai.svg\"],html.dark img[src*=\"/images/brands/opencode.svg\"],html.dark img[src*=\"/images/brands/pipecat.svg\"],html.dark img[src*=\"/images/brands/vercel.svg\"]{filter:invert(1)}html.dark img[src*=\"/images/brands/livekit.svg\"]{background:#fff;border-radius:3px}@media (min-width:600px){#navbar div.flex-1:has(>a>img.nav-logo){flex:0 0 auto!important}#navbar nav[aria-label=Main]{justify-content:flex-start!important}}#navbar div.absolute.w-full.h-full.border-b,#navbar>div.border-b{border-bottom-width:0}[data-component-part=scroll-area-scrollbar]{background-color:transparent}html{scrollbar-width:thin;scrollbar-color:#d4d4d4 transparent}html.dark{scrollbar-color:#525252 transparent}.hero-art{display:block}.hero-art>svg{display:block;width:100%;height:auto}.dark .hero-art-light,.hero-art-dark{display:none}.dark .hero-art-dark{display:block}.frame:has(>.relay-preview){padding:0;background:0 0;border:0;box-shadow:none;border-radius:12px}.frame:has(>.relay-preview)>.absolute.inset-0{display:none}.frame:has(>.relay-preview)>figcaption{margin-top:8px;padding:0 8px;color:rgb(var(--gray-500))}.dark .frame:has(>.relay-preview)>figcaption{color:rgb(var(--gray-400))}.relay-preview{position:relative;background:#fff;color:#000}.dark .relay-preview{background:#000;color:#fff}.relay-preview>*{width:100%;min-width:0}.relay-preview-reset{position:absolute;top:8px;right:8px;z-index:3;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin:0;padding:0;border:0;border-radius:8px;background:0 0;color:rgb(var(--gray-400));cursor:pointer;transition:color .15s ease-in-out,background-color .15s ease-in-out}.relay-preview-reset:hover{color:rgb(var(--gray-600));background:rgb(var(--gray-100))}.dark .relay-preview-reset{color:rgb(var(--gray-500))}.dark .relay-preview-reset:hover{color:rgb(var(--gray-300));background:rgb(255 255 255/.1)}.relay-preview-reset:focus-visible{outline:2px solid currentColor;outline-offset:2px}.relay-preview-reset svg.icon{background-color:currentColor}.relay-preview-bar{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;padding:0 12px 16px}.relay-preview-seg{display:inline-flex;flex-wrap:wrap;justify-content:center;padding:2px;border-radius:9px;background:rgb(var(--gray-100))}.dark .relay-preview-seg{background:rgb(255 255 255/.08)}.relay-preview-seg button{margin:0;padding:3px 10px;border:0;border-radius:7px;background:0 0;color:rgb(var(--gray-500));font:inherit;font-size:12px;font-weight:500;line-height:18px;white-space:nowrap;cursor:pointer;transition:color .15s ease-in-out,background-color .15s ease-in-out}.relay-preview-seg button:hover{color:rgb(var(--gray-800))}.relay-preview-seg button[aria-pressed=true]{background:#fff;color:rgb(var(--gray-900));box-shadow:0 1px 2px rgb(0 0 0/.1),0 0 0 .5px rgb(0 0 0/.06)}.dark .relay-preview-hint,.dark .relay-preview-seg button{color:rgb(var(--gray-400))}.dark .relay-preview-seg button:hover{color:rgb(var(--gray-200))}.dark .relay-preview-seg button[aria-pressed=true]{background:rgb(255 255 255/.16);color:#fff;box-shadow:none}.relay-preview-seg button:focus-visible{outline:2px solid currentColor;outline-offset:1px}.relay-preview-hint{color:rgb(var(--gray-500));font-size:12px;line-height:18px}.buttons-preview-frame{position:relative;overflow:hidden}.buttons-preview-stage{display:flex;flex-direction:column;box-sizing:border-box;max-width:402px;margin:0 auto;padding:16px}.buttons-preview-message{display:flex;flex-direction:column;align-self:flex-start;gap:8px;width:260px;max-width:100%}.selection-preview .buttons-preview-message{align-self:stretch;width:auto}.buttons-preview-text{isolation:isolate;padding:10px 14px;border-radius:20px;background:#f1f3f5;color:#111827;font-size:17px;line-height:1.35;white-space:pre-wrap;overflow-wrap:anywhere}.dark .buttons-preview-text{background:#242b36;color:#f3f4f6}.buttons-preview-text.has-tail{position:relative;margin-bottom:7px}.buttons-preview-text-tail{position:absolute;left:0;top:calc(100% - 16px);z-index:-1;fill:#f1f3f5}.dark .buttons-preview-text-tail{fill:#242b36}.buttons-preview-stack{display:flex;flex-direction:column;align-self:flex-start;gap:4px;width:75%;max-width:75%}.buttons-preview-pill{box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;gap:5px;width:100%;min-height:48px;padding:12px 16px 12px 20px;border-radius:24px;background:#eef5ff;color:#0b75ff;font-weight:600;font-size:17px;line-height:24px;font-family:-apple-system,BlinkMacSystemFont,\"SF Pro Text\",system-ui,sans-serif}.dark .buttons-preview-pill{background:#101e33;color:#6fb0ff}.buttons-preview-action{border:0;text-align:left;cursor:pointer;transition:background-color .2s ease-in-out,transform .15s ease-out}.buttons-preview-action:active{transform:scale(.97);opacity:1}.buttons-preview-action:focus-visible{outline:2px solid currentColor;outline-offset:3px}.buttons-reply{margin-top:8px;animation:selection-appear .2s ease-in-out}.buttons-reply svg{max-width:100%;height:auto}.buttons-preview-own,.buttons-reply{align-self:flex-end;max-width:100%}.buttons-preview-arrow{flex:none;width:1em;height:1em;font-size:.72em;line-height:1}.buttons-preview-tap path{fill:#0b75ff}.buttons-preview-tap text,.buttons-url-preview{font-family:-apple-system,BlinkMacSystemFont,\"SF Pro Text\",\"Inter\",system-ui,sans-serif}.buttons-preview-tap text{fill:#fff;font-size:17px}.buttons-preview.is-browser-open .buttons-preview-frame{min-height:440px}.buttons-url-preview{position:absolute;inset:0;display:flex;flex-direction:column;background:#fff;color:#111827;animation:buttons-browser-rise .28s ease-out}.dark .buttons-url-preview{background:#000;color:#f3f4f6}.buttons-browser-bar{flex:none;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:4px;padding:10px 8px;background:#f2f2f7;border-bottom:1px solid #e5e5ea}.dark .buttons-browser-bar{background:#1c1c1e;border-bottom-color:#2c2c2e}.buttons-url-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin:0 auto;padding:0;border:0;border-radius:16px;background:#e3e3e8;color:#3c3c43;cursor:pointer;transition:transform .15s ease-out}.dark .buttons-url-close{background:#2c2c2e;color:#ebebf5}.buttons-url-close:active{transform:scale(.94)}.buttons-url-close:focus-visible{outline:2px solid #0b75ff;outline-offset:2px}.buttons-url-close svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.buttons-browser-address{display:flex;align-items:center;justify-content:center;gap:5px;min-width:0;height:34px;padding:0 12px;border-radius:12px;background:#e3e3e8;font-size:14px;font-weight:500}.dark .buttons-browser-address{background:#2c2c2e}.buttons-browser-address span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.buttons-browser-address svg{flex:none;width:10px;height:12px;fill:none;stroke:currentColor;stroke-width:1.4}.buttons-browser-reload,.buttons-browser-toolbar svg{fill:none;stroke:#0b75ff;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.buttons-browser-reload{justify-self:center;width:16px;height:16px}.buttons-browser-page{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:24px;text-align:center}.buttons-url-caption{font-size:12px;color:#68717e}.dark .buttons-browser-note,.dark .buttons-url-caption{color:#a0a7b2}.buttons-url-address{font-size:15px;font-weight:600;overflow-wrap:anywhere}.buttons-browser-note{max-width:240px;font-size:13px;color:#68717e}.buttons-browser-toolbar{flex:none;display:flex;justify-content:space-around;padding:10px 8px 14px;background:#f2f2f7;border-top:1px solid #e5e5ea}.dark .buttons-browser-toolbar{background:#1c1c1e;border-top-color:#2c2c2e}.buttons-browser-toolbar svg{width:22px;height:22px}.buttons-browser-toolbar svg.is-disabled{stroke:#c7c7cc}.dark .buttons-browser-toolbar svg.is-disabled{stroke:#48484a}.selection-preview.is-sheet-open .buttons-preview-frame{min-height:400px}.selection-answer,.selection-prompt{display:block;align-self:flex-start;max-width:100%;margin:0;padding:0;border:0;background:0 0;cursor:pointer;transition:transform .15s ease-out}.selection-answer{align-self:flex-end;animation:selection-appear .2s ease-in-out}.selection-answer:active,.selection-prompt:active{transform:scale(.97);opacity:1}.selection-answer:focus-visible,.selection-prompt:focus-visible,.selection-send:focus-visible,.selection-sheet-grabber:focus-visible,.selection-sheet-option:focus-visible{outline:2px solid #0b75ff;outline-offset:3px}.dark .selection-answer:focus-visible,.dark .selection-prompt:focus-visible,.dark .selection-send:focus-visible,.dark .selection-sheet-grabber:focus-visible,.dark .selection-sheet-option:focus-visible{outline-color:#6fb0ff}.selection-card{display:block;max-width:100%;height:auto;font-family:-apple-system,BlinkMacSystemFont,\"SF Pro Text\",\"Inter\",system-ui,sans-serif}.selection-card-leading .selection-card-shape{fill:#f1f3f5}.dark .selection-card-leading .selection-card-shape{fill:#242b36}.selection-card-trailing .selection-card-shape{fill:#0b75ff}.selection-card-title{font-size:15px;font-weight:600}.selection-card-subtitle{font-size:13px}.selection-card-label{font-size:15px}.selection-card-leading .selection-card-label,.selection-card-leading .selection-card-title{fill:#111827}.selection-card-leading .selection-card-subtitle{fill:#68717e}.selection-card-leading .selection-card-mark{stroke:#111827}.selection-card-leading .selection-card-chevron{stroke:#68717e}.dark .selection-card-leading .selection-card-label,.dark .selection-card-leading .selection-card-title{fill:#f3f4f6}.dark .selection-card-leading .selection-card-subtitle{fill:#a0a7b2}.dark .selection-card-leading .selection-card-mark{stroke:#f3f4f6}.dark .selection-card-leading .selection-card-chevron{stroke:#a0a7b2}.selection-card-trailing .selection-card-label,.selection-card-trailing .selection-card-title{fill:#fff}.selection-card-trailing .selection-card-mark{stroke:#fff}.selection-card-trailing .selection-card-chevron{stroke:rgba(255,255,255,.75)}.selection-card-chevron,.selection-card-mark{fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.selection-sheet-layer,.selection-sheet-scrim{position:absolute;inset:0}.selection-sheet-scrim{background:rgba(15,23,42,.38)}.selection-sheet{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;max-height:100%;border-radius:16px 16px 11px 11px;background:#fff;color:#111827;font-family:-apple-system,BlinkMacSystemFont,\"SF Pro Text\",\"Inter\",system-ui,sans-serif;animation:selection-rise .22s ease-out}.dark .selection-sheet{background:#151a23;color:#f3f4f6}.selection-sheet-grabber{flex:none;align-self:center;width:56px;height:20px;margin:0;padding:0;border:0;background:0 0;cursor:pointer}.selection-sheet-grabber::before{content:\"\";display:block;width:36px;height:5px;margin:7px auto 0;border-radius:3px;background:#c7c7cc}.dark .selection-sheet-grabber::before{background:#48484a}.selection-sheet-title{flex:none;padding:12px 24px;font-size:22px;font-weight:700;line-height:1.2}.selection-sheet-list{flex:1 1 auto;min-height:0;max-height:260px;overflow-y:auto;padding-bottom:76px;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 14px,#000 calc(100% - 56px),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 14px,#000 calc(100% - 56px),transparent 100%)}.selection-sheet.is-read-only .selection-sheet-list{padding-bottom:26px;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 14px);mask-image:linear-gradient(to bottom,transparent 0,#000 14px)}.selection-sheet-option{position:relative;box-sizing:border-box;display:flex;align-items:center;gap:12px;width:100%;margin:0;padding:14px 20px;border:0;background:0 0;color:inherit;font:inherit;font-size:16px;text-align:left;cursor:pointer}.selection-sheet-option+.selection-sheet-option::before{content:\"\";position:absolute;top:0;left:52px;right:0;height:1px;background:#e5e7eb}.dark .selection-sheet-option+.selection-sheet-option::before{background:#2b323d}.selection-sheet-option:disabled{cursor:default}.selection-sheet-label{overflow-wrap:anywhere;font-weight:600}.selection-box{flex:none;width:22px;height:22px}.selection-box circle{fill:transparent;stroke:#b9bec7;stroke-width:1.5;transition:fill .2s ease-in-out,stroke .2s ease-in-out}.dark .selection-box circle{stroke:#6b7280}.selection-box path{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .2s ease-in-out}.selection-sheet-option[aria-checked=true] .selection-box circle{fill:#0b75ff;stroke:#0b75ff}.selection-sheet-option[aria-checked=true] .selection-box path{opacity:1}.selection-sheet-footer{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:center;padding:0 0 16px;pointer-events:none}.selection-send{box-sizing:border-box;display:block;width:calc(50% + 16px);height:48px;margin:0;padding:0;border:0;border-radius:24px;background:#0b75ff;color:#fff;box-shadow:0 6px 18px rgba(15,23,42,.16),inset 0 1px 0 rgba(255,255,255,.35);pointer-events:auto;font-family:inherit;font-size:17px;font-weight:600;opacity:1;cursor:pointer;transition:background-color .2s ease-in-out,color .2s ease-in-out,transform .15s ease-out}.selection-send:active:not(:disabled){transform:scale(.96);opacity:1}.selection-send:disabled{background:#eceef1;color:rgba(60,60,67,.3);opacity:1;cursor:default}.dark .selection-send:disabled{background:#2c2c2e;color:rgba(235,235,245,.3)}.native-dialog,.native-preview{--app-blue:var(--relay-brand-blue);--app-incoming:#e9e9e9;--app-ink:#000;--app-secondary:rgba(60,60,67,.6);--app-group:#f2f2f7;--app-field:#fff;--app-line:rgba(60,60,67,.18);color:var(--app-ink);font:17px/1.3 -apple-system,BlinkMacSystemFont,\"SF Pro Text\",system-ui,sans-serif}.dark .native-dialog,.dark .native-preview{--app-blue:#007eff;--app-incoming:#2c2c2e;--app-ink:#fff;--app-secondary:rgba(235,235,245,.6);--app-group:#000;--app-field:#1c1c1e;--app-line:rgba(84,84,88,.65)}.native-dialog *,.native-preview *{box-sizing:border-box}.native-dialog button,.native-preview button{font:inherit;cursor:pointer}.native-dialog :focus-visible,.native-preview button:focus-visible{outline:2px solid var(--app-blue);outline-offset:3px}.native-preview{position:relative}.native-transcript{display:flex;flex-direction:column;gap:8px;max-width:402px;margin:0 auto;padding:16px;box-sizing:border-box}.native-text{align-self:flex-start;max-width:calc(100% - 94px);border-radius:20px;padding:10px 14px;background:var(--app-incoming);overflow-wrap:anywhere}.native-capsule{border:0;border-radius:999px;padding:8px 12px;min-height:40px;width:100%;background:color-mix(in srgb,var(--app-blue) 15%,transparent);color:var(--app-blue);font-weight:600!important;line-height:22px}.form-calendar-grid button[aria-pressed=true],.native-capsule.is-primary{background:var(--app-blue);color:#fff}.native-capsule:active{opacity:.7;transform:scale(.97)}.native-capsule:disabled{opacity:.35;cursor:default}.rich-shelf{display:flex;align-items:stretch;gap:8px;padding-bottom:7px}.rich-shelf.is-carousel{scroll-behavior:smooth;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin}.rich-balloon{position:relative;isolation:isolate;flex:0 0 min(350px,calc(100% - 94px));min-width:0;scroll-snap-align:start}.rich-balloon.is-small{flex-basis:min(180px,calc(100% - 94px))}.rich-card,.rich-media{background:var(--app-incoming)}.rich-card{display:flex;flex-direction:column;height:100%;overflow:hidden;border-radius:18px}.rich-media{display:block;flex-shrink:0;width:100%;padding:0;border:0}.rich-media:focus-visible{outline-offset:-3px}.rich-media img{display:block;width:100%;height:100%;object-fit:cover;margin:0;border-radius:0}.rich-copy{padding:16px 16px 0}.rich-media+.rich-copy{padding-top:12px}.rich-title{font-size:17px;font-weight:600;overflow-wrap:anywhere}.rich-description{margin-top:2px;color:var(--app-secondary);overflow-wrap:anywhere}.rich-suggestions{display:flex;flex-direction:column;gap:8px;padding:12px 16px 16px;margin-top:auto}.native-tail{position:absolute;left:0;bottom:-7px;width:23px;height:24px;fill:var(--app-incoming);z-index:-1}.rich-followups{display:flex;flex-direction:column;gap:4px;width:calc((100% - 94px)*.75)}.rich-followups .native-capsule{min-height:48px;text-align:left;padding:12px 16px 12px 20px}.rich-scroll-controls{display:flex;justify-content:center;gap:12px}.rich-scroll-controls button{background:0 0;border:0;color:var(--app-blue);width:32px;height:28px;border-radius:8px;font-size:24px}.native-replies{display:flex;flex-direction:column;gap:8px}.native-replies:empty{display:none}.native-preview .buttons-preview-tap path,.native-preview .selection-card-trailing .selection-card-shape{fill:var(--app-blue)}.native-preview .selection-card-leading .selection-card-shape{fill:var(--app-incoming)}.native-preview .selection-card-leading .selection-card-title{fill:var(--app-ink)}.native-preview .selection-card-leading .selection-card-subtitle{fill:var(--app-secondary)}.native-preview .selection-card-leading .selection-card-chevron{stroke:var(--app-secondary)}.form-preview .selection-card-leading .selection-card-subtitle{fill:rgba(60,60,67,.72)}.dark .form-preview .selection-card-leading .selection-card-subtitle{fill:rgba(235,235,245,.7)}.form-preview .selection-card-trailing .selection-card-subtitle{fill:rgba(255,255,255,.8)}.dark .form-preview .selection-card-trailing .selection-card-subtitle{fill:rgba(255,255,255,.6)}.rich-followups .native-capsule{background:#eef5ff;color:#0b75ff}.dark .rich-followups .native-capsule{background:#101e33;color:#6fb0ff}.native-form-answer,.native-form-prompt{display:block;width:fit-content;max-width:100%;background:0 0;border:0;padding:0}.native-form-prompt{align-self:flex-start}.native-form-answer{align-self:flex-end}.native-form-answer svg,.native-form-prompt svg{display:block;max-width:100%;height:auto}.native-response{padding:8px 16px;font-size:13px}.native-response summary{cursor:pointer;color:var(--app-secondary)}.native-response pre{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:220px;overflow:auto}.native-dialog{width:min(402px,calc(100vw - 24px));max-height:min(680px,90dvh);padding:0;border:0;border-radius:28px;background:var(--app-field);margin:auto;box-shadow:0 20px 80px #0003}.native-dialog::backdrop{background:#0006}.native-dialog[open]{display:flex;flex-direction:column}.native-sheet-bar{flex-shrink:0;display:grid;grid-template-columns:1fr 32px;align-items:center;gap:8px;padding:12px 16px;font-size:17px}.native-sheet-bar button{width:32px;height:32px;padding:0;border:0;border-radius:50%;background:var(--app-incoming);color:var(--app-ink);font-size:24px;line-height:1}.native-sheet-bar .native-back{color:var(--app-blue);background:0 0;font-size:32px}.rich-photo{width:100%;min-height:0;object-fit:contain;margin:0}.rich-url{padding:24px;overflow-wrap:anywhere}.native-form-content h3,.rich-url p{color:var(--app-secondary);font-size:15px}.native-form-sheet{background:var(--app-group);height:min(620px,90dvh)}.native-form-sheet .native-sheet-bar{grid-template-columns:32px 1fr 32px;text-align:center}.native-grabber{flex-shrink:0;width:36px;height:5px;border-radius:3px;background:var(--app-line);margin:8px auto 0}.native-form-content{overflow-y:auto;flex:1;min-height:0;padding:8px 20px 20px}.native-form-content section{margin:16px 0 24px}.native-form-content h3{display:flex;justify-content:space-between;gap:8px;margin:0 16px 7px;font-size:13px;font-weight:400;text-transform:uppercase}.native-form-content h3 span:last-child:not(:first-child){text-transform:none}.native-field-group{background:var(--app-field);border-radius:12px;overflow:hidden}.native-field-group input,.native-field-group textarea{display:block;width:100%;border:0;border-radius:0;padding:12px 16px;margin:0;background:0 0;color:var(--app-ink);font:inherit;resize:vertical}.native-field-group input::placeholder,.native-field-group textarea::placeholder{color:var(--app-secondary)}.native-field-group:focus-within{outline:2px solid var(--app-blue);outline-offset:2px}.native-field-group :focus-visible{outline-offset:-3px}.form-choice,.form-date,.form-picker{display:flex;width:100%;min-height:44px;gap:8px;align-items:center;justify-content:space-between;border:0;padding:10px 16px;background:0 0;color:var(--app-ink);text-align:left}.form-choice+.form-choice{border-top:.5px solid var(--app-line)}.form-check{color:var(--app-blue);font-weight:600}.form-switch{display:flex;align-items:center;width:51px;height:31px;flex-shrink:0;border-radius:16px;padding:2px;background:var(--app-line)}.form-switch>span{display:block;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003}.form-switch.is-on{background:var(--app-blue);justify-content:flex-end}.form-picker select{max-width:60%;min-width:64px;border:0;color:var(--app-blue);background:0 0;font:inherit}.form-date>span:last-child{padding:6px 11px;border-radius:999px;background:var(--app-incoming);color:var(--app-blue)}.form-calendar{padding:12px 16px}.form-calendar-heading{display:flex;align-items:center;gap:12px}.form-calendar-heading strong{flex:1;font-size:17px}.form-calendar-heading button{background:0 0;color:var(--app-blue);border:0;font-size:28px}.form-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center;margin-top:12px}.form-calendar-grid>span{font-size:12px;color:var(--app-secondary)}.form-calendar-grid button{aspect-ratio:1;padding:0;border:0;border-radius:50%;color:var(--app-ink);background:0 0}.form-calendar button:disabled{opacity:.25;cursor:default}.form-clear-date{display:block;border:0;background:0 0;color:#ff3b30;padding:10px 16px}.form-answer-row{white-space:pre-wrap;overflow-wrap:anywhere}.form-answer-row+.form-answer-row{border-top:.5px solid var(--app-line)}.form-answer-row>span{display:block;font-size:15px;color:var(--app-secondary);margin-bottom:5px}.form-answer-row,.form-intro{padding:12px 16px}.form-hint{color:var(--app-secondary);font-size:13px;padding:0 16px}.native-form-bottom{display:flex;justify-content:center;padding:12px 16px 16px;flex-shrink:0}.native-form-bottom .native-capsule{min-height:50px;width:calc(50% + 32px);max-width:100%}[data-component-part=card-icon]:has(img[src*=\"/images/brands/\"]){flex-shrink:0}@media (prefers-reduced-motion:reduce){.buttons-preview *,.buttons-preview ::before{transition:none!important;animation:none!important}.buttons-preview-action:active,.selection-answer:active,.selection-prompt:active,.selection-send:active:not(:disabled){transform:none}.rich-shelf.is-carousel{scroll-behavior:auto}.native-capsule:active{transform:none!important}}.a2-balloon{align-self:flex-start;width:min(350px,calc(100% - 40px))}.a2-card{padding:16px;background:var(--app-incoming);overflow:hidden}.a2-col,.a2-row{display:flex;flex-direction:column;gap:8px}.a2-row{flex-direction:row}.a2-text{line-height:1.25;overflow-wrap:anywhere}.a2-badge,.a2-text.is-caption{font-size:13px;color:var(--app-secondary)}.a2-badge{display:inline-block;padding:4px 10px;border-radius:999px;font-weight:700;background:color-mix(in srgb,var(--app-blue) 15%,transparent);color:var(--app-blue);white-space:nowrap}.a2-divider{border:0;border-top:1px solid var(--app-line);margin:4px 0}.native-preview .a2-button{border:0;border-radius:999px;min-height:44px;width:100%;padding:10px 16px;background:var(--app-blue);color:#fff;font-weight:600;font-size:17px}.native-preview .a2-button.is-borderless{background:0 0;color:var(--app-blue)}.a2-slider{display:flex;flex-direction:column;gap:6px}.a2-slider-head{display:flex;justify-content:space-between;color:var(--app-secondary);font-size:15px}.a2-slider input{-webkit-appearance:none;appearance:none;width:100%;height:4px;border-radius:2px;margin:10px 0;background:linear-gradient(to right,var(--app-blue) var(--a2-fill),var(--app-line) var(--a2-fill))}.a2-slider input::-webkit-slider-thumb{-webkit-appearance:none;width:36px;height:24px;border-radius:12px;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25)}.a2-slider input::-moz-range-thumb{width:36px;height:24px;border-radius:12px;border:0;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25)}.native-preview .a2-check,.native-preview .a2-choice{display:flex;align-items:center;gap:10px;border:0;background:0 0;color:inherit;padding:4px 0;text-align:left;font-size:17px}.a2-box{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;border:2px solid var(--app-secondary);color:#fff;font-size:14px;font-weight:700}.a2-check.is-on .a2-box{background:var(--app-blue);border-color:var(--app-blue)}.a2-check.is-on span:last-child{text-decoration:line-through;color:var(--app-secondary)}.a2-choices{display:flex;flex-direction:column;gap:2px}.a2-dot{width:22px;height:22px;border-radius:50%;border:2px solid var(--app-secondary);flex-shrink:0}.a2-choice.is-on .a2-dot{border:7px solid var(--app-blue)}.a2-chart{display:flex;align-items:flex-end;gap:12px;height:160px;padding-top:8px}.a2-bar-slot{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;font-size:12px;color:var(--app-secondary)}.a2-bar{width:100%;background:var(--app-blue);border-radius:4px 4px 0 0;min-height:2px}.a2-map{position:relative;height:180px;border-radius:12px;background:#dfe9d8;overflow:hidden}.dark .a2-map{background:#26322b}.native-preview .a2-pin{position:absolute;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;border:3px solid #fff;background:#ff3b30;padding:0;box-shadow:0 1px 3px rgba(0,0,0,.3)}.native-preview .a2-pin.is-on{transform:scale(1.3)}.a2-pin-detail{display:flex;flex-direction:column;margin-top:8px;font-size:15px}.a2-pin-detail span{color:var(--app-secondary)}.a2-countdown{font-size:34px;font-weight:600;font-variant-numeric:tabular-nums}.a2-image{height:140px;border-radius:12px;background:var(--app-line)}.a2-row>.a2-text{flex:1 1 auto;overflow-wrap:break-word}.a2-row>.a2-badge{flex:0 0 auto}"}],"page":{"pagePath":"api-reference/messages/send-a-voice-memo-to-a-chat","slug":"/api-reference/messages/send-a-voice-memo-to-a-chat","pageMetadata":{"title":"Send a voice memo to a chat","description":"Send an uploaded audio Attachment as a voice memo.","deprecated":null,"version":null,"sidebarTitle":"Send voice memo","openapi":"/api-reference/openapi.mint.yaml post /v1/chats/{chatId}/voicememo","href":"/api-reference/messages/send-a-voice-memo-to-a-chat","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Send an uploaded audio Attachment as a voice memo.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Send a voice memo to a chat","description":"Send an uploaded audio Attachment as a voice memo.","deprecated":null,"version":null,"sidebarTitle":"Send voice memo","openapi":"/api-reference/openapi.mint.yaml post /v1/chats/{chatId}/voicememo","href":"/api-reference/messages/send-a-voice-memo-to-a-chat","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/relay-staging/603be6d9fda39113/agent-prompt.js","/_mintlify/custom/relay-staging/e136a31f650b5647/posthog.js"],"openApiReferenceData":{"operation":{"operationId":"sendVoiceMemoToChat","x-mint":{"metadata":{"sidebarTitle":"Send voice memo"},"href":"/api-reference/messages/send-a-voice-memo-to-a-chat"},"summary":"Send a voice memo to a chat","description":"Send an uploaded audio Attachment as a voice memo.","tags":["Messages"],"security":["292c344f-d6eb-4125-afd8-687ae247e5be"],"parameters":["0167a0b3-4926-4948-920e-d84147cc30c6","8ea462e7-30f6-4cf3-a3dd-13eec96dfe37"],"requestBody":"cb7d1814-54fe-4198-88d7-4e7bc92ce361","responses":{"202":"9304c6c4-dd30-4138-acc1-8ff8503d93ff","400":"5ad063de-dda2-4741-baa4-43a400bcf2a1","401":"067a3834-3cd5-4fc3-bed7-92128eb98c8c","403":"4354c509-91eb-4e66-ae18-8c2ed5fbf5f3","404":"1f48354c-2085-4032-a6ca-c5502c76bb7a","409":"aecf06cc-21f5-4290-93cb-93c5b9d73da7","413":"0f5d040e-015f-4c20-9f2b-eb3014755b27","422":"322554f0-38a5-47c2-b9d1-05cea7f0b303","429":"ad43e1ff-8d44-488e-b827-6c950d6d018d","500":"738a36b1-33de-4ff6-8fa0-cceb909cb263"},"method":"post","type":"path","servers":["5fe554b7-ad2b-4bee-af8d-aab2bdda93ef"],"path":"/v1/chats/{chatId}/voicememo","baseUrlOptions":["https://api.staging.relayapp.im"],"title":"Send a voice memo to a chat","codeSamples":[],"requestExampleLanguages":["bash"],"requiredOnlyExamples":true,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"0167a0b3-4926-4948-920e-d84147cc30c6":{"name":"chatId","in":"path","required":true,"description":"Unique identifier of the chat","schema":{"type":"string","format":"uuid","isRequired":true,"description":"Unique identifier of the chat","uniqueKey":"","typeLabel":"string\u003cuuid>"}},"8ea462e7-30f6-4cf3-a3dd-13eec96dfe37":{"name":"Idempotency-Key","in":"header","required":false,"description":"Optional 1–255 character key for safe retries. The same key and body return the first voice memo; the same key with a different body is refused with 409.","schema":{"type":"string","minLength":1,"maxLength":255,"isRequired":false,"description":"Optional 1–255 character key for safe retries. The same key and body return the first voice memo; the same key with a different body is refused with 409.","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"oneOf":[{"type":"object","description":"Request to send a voice memo to a chat (chat_id provided in path).\nExactly one of `voice_memo_url` or `attachment_id` must be provided.\n","required":["voice_memo_url"],"properties":{"voice_memo_url":{"type":"string","description":"URL of the voice memo audio file. Must be a publicly accessible HTTPS URL.\n\nEither `voice_memo_url` or `attachment_id` must be provided, but not both.\n","format":"uri","isRequired":true,"uniqueKey":"oneOf.0.voice_memo_url","typeLabel":"string\u003curi>"},"attachment_id":{"type":"string","description":"Reference to a voice memo file pre-uploaded via `POST /v1/attachments`.\nThe file is already stored, so sends using this ID skip the download step.\n\nEither `voice_memo_url` or `attachment_id` must be provided, but not both.\n","format":"uuid","uniqueKey":"oneOf.0.attachment_id","typeLabel":"string\u003cuuid>"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Request to send a voice memo to a chat (chat_id provided in path).\nExactly one of `voice_memo_url` or `attachment_id` must be provided.\n","required":["attachment_id"],"properties":{"attachment_id":{"type":"string","description":"Reference to a voice memo file pre-uploaded via `POST /v1/attachments`.\nThe file is already stored, so sends using this ID skip the download step.\n\nEither `voice_memo_url` or `attachment_id` must be provided, but not both.\n","format":"uuid","isRequired":true,"uniqueKey":"oneOf.1.attachment_id","typeLabel":"string\u003cuuid>"},"voice_memo_url":{"type":"string","description":"URL of the voice memo audio file. Must be a publicly accessible HTTPS URL.\n\nEither `voice_memo_url` or `attachment_id` must be provided, but not both.\n","format":"uri","uniqueKey":"oneOf.1.voice_memo_url","typeLabel":"string\u003curi>"}},"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"voice_memo_url":"\u003cstring>","attachment_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"9304c6c4-dd30-4138-acc1-8ff8503d93ff":{"description":"Voice memo accepted for delivery","content":{"application/json":{"schema":{"type":"object","description":"Response for sending a voice memo to a chat","required":["voice_memo"],"properties":{"voice_memo":{"type":"object","required":["id","from","to","status","voice_memo","created_at","chat"],"properties":{"id":{"type":"string","format":"uuid","description":"Message identifier","isRequired":true,"uniqueKey":"voice_memo.id","typeLabel":"string\u003cuuid>"},"from":{"type":"string","isRequired":true,"uniqueKey":"voice_memo.from","typeLabel":"string"},"to":{"type":"array","items":{"type":"string","uniqueKey":"voice_memo.to.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"voice_memo.to","typeLabel":"string[]"},"status":{"type":"string","description":"Current delivery status","isRequired":true,"uniqueKey":"voice_memo.status","typeLabel":"string"},"voice_memo":{"type":"object","required":["id","url","filename","mime_type","size_bytes"],"properties":{"id":{"type":"string","format":"uuid","description":"Attachment identifier","isRequired":true,"uniqueKey":"voice_memo.voice_memo.id","typeLabel":"string\u003cuuid>"},"url":{"type":"string","format":"uri","description":"Opaque Relay download URL for the voice memo Attachment.","isRequired":true,"uniqueKey":"voice_memo.voice_memo.url","typeLabel":"string\u003curi>"},"filename":{"type":"string","description":"Original filename","isRequired":true,"uniqueKey":"voice_memo.voice_memo.filename","typeLabel":"string"},"mime_type":{"type":"string","description":"Audio MIME type","isRequired":true,"uniqueKey":"voice_memo.voice_memo.mime_type","typeLabel":"string"},"size_bytes":{"type":"integer","description":"File size in bytes","isRequired":true,"uniqueKey":"voice_memo.voice_memo.size_bytes","typeLabel":"integer"},"duration_ms":{"oneOf":[{"type":"integer","minimum":0,"description":"Audio or video duration in milliseconds when known.","uniqueKey":"voice_memo.voice_memo.duration_ms.oneOf.0","typeLabel":"integer"},{"type":"null","minimum":0,"description":"Audio or video duration in milliseconds when known.","uniqueKey":"voice_memo.voice_memo.duration_ms.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_memo.voice_memo.duration_ms","typeLabel":"integer | null"},"width":{"oneOf":[{"type":"integer","minimum":1,"description":"Pixel width when known. Width and height are supplied together.","uniqueKey":"voice_memo.voice_memo.width.oneOf.0","typeLabel":"integer"},{"type":"null","minimum":1,"description":"Pixel width when known. Width and height are supplied together.","uniqueKey":"voice_memo.voice_memo.width.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_memo.voice_memo.width","typeLabel":"integer | null"},"height":{"oneOf":[{"type":"integer","minimum":1,"description":"Pixel height when known. Width and height are supplied together.","uniqueKey":"voice_memo.voice_memo.height.oneOf.0","typeLabel":"integer"},{"type":"null","minimum":1,"description":"Pixel height when known. Width and height are supplied together.","uniqueKey":"voice_memo.voice_memo.height.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_memo.voice_memo.height","typeLabel":"integer | null"}},"isRequired":true,"uniqueKey":"voice_memo.voice_memo","typeLabel":"object"},"created_at":{"type":"string","format":"date-time","description":"When the voice memo was created","isRequired":true,"uniqueKey":"voice_memo.created_at","typeLabel":"string\u003cdate-time>"},"chat":{"type":"object","required":["id","handles","is_group"],"properties":{"id":{"type":"string","format":"uuid","description":"Chat identifier","isRequired":true,"uniqueKey":"voice_memo.chat.id","typeLabel":"string\u003cuuid>"},"handles":{"type":"array","description":"Chat participants","items":{"type":"object","required":["id","handle","joined_at","kind","display_name","image_url","image_color","subtitle","verified","is_contact"],"properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for this handle","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].id","typeLabel":"string\u003cuuid>"},"handle":{"type":"string","description":"Relay Handle.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].handle","typeLabel":"string"},"joined_at":{"type":"string","format":"date-time","description":"When this participant joined the chat","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].joined_at","typeLabel":"string\u003cdate-time>"},"kind":{"type":"string","enum":["user","agent"],"description":"Whether this Contact is a user or an agent.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].kind","typeLabel":"enum\u003cstring>"},"display_name":{"oneOf":[{"type":"string","description":"Current Contact display name.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].display_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Current Contact display name.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].display_name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].display_name","typeLabel":"string | null"},"image_url":{"oneOf":[{"type":"string","format":"uri","description":"Current Contact picture, as a permanent address served by Relay. It does not expire and may be cached indefinitely.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].image_url.oneOf.0","typeLabel":"string\u003curi>"},{"type":"null","format":"uri","description":"Current Contact picture, as a permanent address served by Relay. It does not expire and may be cached indefinitely.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].image_url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].image_url","typeLabel":"string\u003curi> | null"},"image_color":{"oneOf":[{"type":"string","pattern":"^[0-9A-F]{6}$","description":"Dominant colour of the picture at image_url, six uppercase hex digits, computed by Relay once when the picture is set. Null when Relay could not read the picture.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].image_color.oneOf.0","typeLabel":"string"},{"type":"null","pattern":"^[0-9A-F]{6}$","description":"Dominant colour of the picture at image_url, six uppercase hex digits, computed by Relay once when the picture is set. Null when Relay could not read the picture.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].image_color.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].image_color","typeLabel":"string | null"},"subtitle":{"oneOf":[{"type":"string","maxLength":60,"description":"The one line under an agent's name. User Contacts return null.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].subtitle.oneOf.0","typeLabel":"string"},{"type":"null","maxLength":60,"description":"The one line under an agent's name. User Contacts return null.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].subtitle.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].subtitle","typeLabel":"string | null"},"verified":{"type":"boolean","description":"Whether Relay has verified this agent.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].verified","typeLabel":"boolean"},"is_contact":{"type":"boolean","description":"Whether the caller holds this member as a Contact. A person's reply or adding the agent makes it a Contact. Removing a Contact keeps an existing conversation in Chats until another incoming message makes it a message request, unless the caller owns the agent or is a member of its organization.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].is_contact","typeLabel":"boolean"},"status":{"oneOf":[{"type":"string","description":"Participant status","enum":["active","left","removed"],"default":"active","uniqueKey":"voice_memo.chat.handles.items.[INDEX].status.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"Participant status","enum":["active","left","removed"],"default":"active","uniqueKey":"voice_memo.chat.handles.items.[INDEX].status.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_memo.chat.handles.items.[INDEX].status","typeLabel":"enum\u003cstring> | null"},"left_at":{"oneOf":[{"type":"string","format":"date-time","description":"When they left (if applicable)","uniqueKey":"voice_memo.chat.handles.items.[INDEX].left_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"When they left (if applicable)","uniqueKey":"voice_memo.chat.handles.items.[INDEX].left_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_memo.chat.handles.items.[INDEX].left_at","typeLabel":"string\u003cdate-time> | null"},"is_me":{"oneOf":[{"type":"boolean","description":"Whether this handle is the authenticated caller.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].is_me.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Whether this handle is the authenticated caller.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].is_me.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_memo.chat.handles.items.[INDEX].is_me","typeLabel":"boolean | null"},"owner":{"oneOf":[{"type":"object","description":"Who owns this agent. Present only when kind is agent. Null for an agent that no organization or person owns.","required":["kind","name","verified"],"properties":{"kind":{"type":"string","enum":["organization"],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"name":{"oneOf":[{"type":"string","description":"The organization's name in Relay Console. Null until the organization has one.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.0.name.oneOf.0","typeLabel":"string"},{"type":"null","description":"The organization's name in Relay Console. Null until the organization has one.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.0.name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.0.name","typeLabel":"string | null"},"verified":{"type":"boolean","description":"Whether Relay has verified the organization.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.0.verified","typeLabel":"boolean"}},"additionalProperties":false,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.0","typeLabel":"object"},{"type":"object","description":"Who owns this agent. Present only when kind is agent. Null for an agent that no organization or person owns.","required":["kind","handle","display_name"],"properties":{"kind":{"type":"string","enum":["user"],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"handle":{"oneOf":[{"type":"string","description":"The owning person's Relay Handle. Null when the person has no Relay account.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.handle.oneOf.0","typeLabel":"string"},{"type":"null","description":"The owning person's Relay Handle. Null when the person has no Relay account.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.handle.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.handle","typeLabel":"string | null"},"display_name":{"oneOf":[{"type":"string","description":"The owning person's display name. Null when the person has no Relay account.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.display_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"The owning person's display name. Null when the person has no Relay account.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.display_name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.display_name","typeLabel":"string | null"},"timezone":{"oneOf":[{"type":"string","maxLength":64,"examples":["America/Detroit"],"description":"The person's IANA time zone name, as their Relay app last reported it; null until the app reports one. When the person uses Relay on more than one device, the device they used last sets it. Null when the person has no Relay account. Timestamps stay in UTC; use this to read them in the person's local time.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.timezone.oneOf.0","typeLabel":"string"},{"type":"null","maxLength":64,"examples":["America/Detroit"],"description":"The person's IANA time zone name, as their Relay app last reported it; null until the app reports one. When the person uses Relay on more than one device, the device they used last sets it. Null when the person has no Relay account. Timestamps stay in UTC; use this to read them in the person's local time.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.timezone.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.timezone","typeLabel":"string | null"},"age_range":{"oneOf":[{"type":"string","enum":["under_13","13_15","16_17","18_plus",null],"examples":["18_plus"],"description":"The person's age range, as their Relay app last reported it: from Apple's Declared Age Range, or from a birth year the person gave once (only the range is kept). Null until the app reports one. Null when the person has no Relay account. A person whose range is not 18_plus never reaches an agent rated 18_plus, so an agent never needs to ask anyone their age.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.age_range.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["under_13","13_15","16_17","18_plus",null],"examples":["18_plus"],"description":"The person's age range, as their Relay app last reported it: from Apple's Declared Age Range, or from a birth year the person gave once (only the range is kept). Null until the app reports one. Null when the person has no Relay account. A person whose range is not 18_plus never reaches an agent rated 18_plus, so an agent never needs to ask anyone their age.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.age_range.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.age_range","typeLabel":"enum\u003cstring> | null"},"links":{"oneOf":[{"type":"array","maxItems":5,"uniqueItems":true,"items":{"type":"string","format":"uri","maxLength":2048,"pattern":"^https://","uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.links.oneOf.0.items.[INDEX]","typeLabel":"string\u003curi>"},"examples":[["https://github.com/ana","https://www.instagram.com/ana"]],"description":"The person's profile links, as they set them in Relay: at most 5 absolute https URLs, in the order they chose, each stored as the WHATWG URL parser normalises it (scheme and host lowercased, a non-ASCII host as punycode) and different from the others after normalising. Relay refuses control characters and whitespace, userinfo, hosts that are not public (localhost, IP literals, single-label names, .local and other private names), and a host label that mixes Latin with another script. Empty when they set none. Null when the person has no Relay account. Relay sends no platform name; read the site from the URL.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.links.oneOf.0","typeLabel":"string\u003curi>[]"},{"type":"null","maxItems":5,"uniqueItems":true,"items":{"type":"string","format":"uri","maxLength":2048,"pattern":"^https://"},"examples":[["https://github.com/ana","https://www.instagram.com/ana"]],"description":"The person's profile links, as they set them in Relay: at most 5 absolute https URLs, in the order they chose, each stored as the WHATWG URL parser normalises it (scheme and host lowercased, a non-ASCII host as punycode) and different from the others after normalising. Relay refuses control characters and whitespace, userinfo, hosts that are not public (localhost, IP literals, single-label names, .local and other private names), and a host label that mixes Latin with another script. Empty when they set none. Null when the person has no Relay account. Relay sends no platform name; read the site from the URL.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.links.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.links","typeLabel":"string\u003curi>[] | null"},"about":{"oneOf":[{"type":"string","maxLength":160,"examples":["Builds robots in Ann Arbor."],"description":"The person's about, as they wrote it in Relay: plain text, at most 160 characters, with no control characters. Null when they wrote none or have no Relay account.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.about.oneOf.0","typeLabel":"string"},{"type":"null","maxLength":160,"examples":["Builds robots in Ann Arbor."],"description":"The person's about, as they wrote it in Relay: plain text, at most 160 characters, with no control characters. Null when they wrote none or have no Relay account.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.about.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1.about","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.1","typeLabel":"object"},{"type":"null","description":"Who owns this agent. Present only when kind is agent. Null for an agent that no organization or person owns.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner.oneOf.2","typeLabel":"null"}],"uniqueKey":"voice_memo.chat.handles.items.[INDEX].owner","typeLabel":"object · object · null"},"rive":{"oneOf":[{"type":"object","description":"The Rive file this agent shows in its calls, so the app can load it before the call connects. Null when it has none. Present only when kind is agent.","required":["file","artboard","state_machine","view_model"],"properties":{"file":{"type":"string","format":"uri","description":"The .riv Relay hosts, at a permanent address that never changes its bytes: `\u003ccdn>/rive/\u003ccontact id>/\u003cversion>/file-\u003chash>.riv`.","examples":["https://cdn.relayapp.im/rive/0199a000-0000-7000-8000-00000000000b/1790000000000/file-0123456789abcdef.riv"],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].rive.oneOf.0.file","typeLabel":"string\u003curi>"},"artboard":{"oneOf":[{"type":"string","maxLength":255,"examples":["Call"],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].rive.oneOf.0.artboard.oneOf.0","typeLabel":"string"},{"type":"null","maxLength":255,"examples":["Call"],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].rive.oneOf.0.artboard.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].rive.oneOf.0.artboard","typeLabel":"string | null"},"state_machine":{"oneOf":[{"type":"string","maxLength":255,"examples":["Main"],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].rive.oneOf.0.state_machine.oneOf.0","typeLabel":"string"},{"type":"null","maxLength":255,"examples":["Main"],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].rive.oneOf.0.state_machine.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].rive.oneOf.0.state_machine","typeLabel":"string | null"},"view_model":{"oneOf":[{"type":"string","maxLength":255,"examples":["Main"],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].rive.oneOf.0.view_model.oneOf.0","typeLabel":"string"},{"type":"null","maxLength":255,"examples":["Main"],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].rive.oneOf.0.view_model.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].rive.oneOf.0.view_model","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].rive.oneOf.0","typeLabel":"object"},{"type":"null","description":"The Rive file this agent shows in its calls, so the app can load it before the call connects. Null when it has none. Present only when kind is agent.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].rive.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_memo.chat.handles.items.[INDEX].rive","typeLabel":"object | null"},"timezone":{"oneOf":[{"type":"string","maxLength":64,"examples":["America/Detroit"],"description":"The person's IANA time zone name, as their Relay app last reported it; null until the app reports one. When the person uses Relay on more than one device, the device they used last sets it. Present only when kind is user. Timestamps stay in UTC; use this to read them in the person's local time.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].timezone.oneOf.0","typeLabel":"string"},{"type":"null","maxLength":64,"examples":["America/Detroit"],"description":"The person's IANA time zone name, as their Relay app last reported it; null until the app reports one. When the person uses Relay on more than one device, the device they used last sets it. Present only when kind is user. Timestamps stay in UTC; use this to read them in the person's local time.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].timezone.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_memo.chat.handles.items.[INDEX].timezone","typeLabel":"string | null"},"age_range":{"oneOf":[{"type":"string","enum":["under_13","13_15","16_17","18_plus",null],"examples":["18_plus"],"description":"The person's age range, as their Relay app last reported it: from Apple's Declared Age Range, or from a birth year the person gave once (only the range is kept). Null until the app reports one. Present only when kind is user. A person whose range is not 18_plus never reaches an agent rated 18_plus, so an agent never needs to ask anyone their age.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].age_range.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["under_13","13_15","16_17","18_plus",null],"examples":["18_plus"],"description":"The person's age range, as their Relay app last reported it: from Apple's Declared Age Range, or from a birth year the person gave once (only the range is kept). Null until the app reports one. Present only when kind is user. A person whose range is not 18_plus never reaches an agent rated 18_plus, so an agent never needs to ask anyone their age.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].age_range.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_memo.chat.handles.items.[INDEX].age_range","typeLabel":"enum\u003cstring> | null"},"links":{"type":"array","maxItems":5,"uniqueItems":true,"items":{"type":"string","format":"uri","maxLength":2048,"pattern":"^https://","uniqueKey":"voice_memo.chat.handles.items.[INDEX].links.items.[INDEX]","typeLabel":"string\u003curi>"},"examples":[["https://github.com/ana","https://www.instagram.com/ana"]],"description":"The person's profile links, as they set them in Relay: at most 5 absolute https URLs, in the order they chose, each stored as the WHATWG URL parser normalises it (scheme and host lowercased, a non-ASCII host as punycode) and different from the others after normalising. Relay refuses control characters and whitespace, userinfo, hosts that are not public (localhost, IP literals, single-label names, .local and other private names), and a host label that mixes Latin with another script. Empty when they set none. Present only when kind is user. Relay sends no platform name; read the site from the URL.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].links","typeLabel":"string\u003curi>[]"},"about":{"oneOf":[{"type":"string","maxLength":160,"examples":["Builds robots in Ann Arbor."],"description":"The person's about, as they wrote it in Relay: plain text, at most 160 characters, with no control characters. Null when they wrote none. Present only when kind is user.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].about.oneOf.0","typeLabel":"string"},{"type":"null","maxLength":160,"examples":["Builds robots in Ann Arbor."],"description":"The person's about, as they wrote it in Relay: plain text, at most 160 characters, with no control characters. Null when they wrote none. Present only when kind is user.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].about.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_memo.chat.handles.items.[INDEX].about","typeLabel":"string | null"},"activity_version":{"type":"string","pattern":"^(0|[1-9][0-9]*)$","description":"Activity state version for this participant in this chat. Older versions must not replace newer state.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].activity_version","typeLabel":"string"},"activity":{"oneOf":[{"type":"object","description":"Current activity in this chat. Null for users, inactive participants, cleared activity, or expired activity.","required":["id","text","emoji","updated_at","expires_at"],"properties":{"id":{"type":"string","format":"uuid","description":"Identifier of this activity, retained when it is renewed.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].activity.oneOf.0.id","typeLabel":"string\u003cuuid>"},"text":{"type":"string","description":"Current short activity description.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].activity.oneOf.0.text","typeLabel":"string"},"emoji":{"oneOf":[{"type":"string","description":"Optional Unicode emoji.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].activity.oneOf.0.emoji.oneOf.0","typeLabel":"string"},{"type":"null","description":"Optional Unicode emoji.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].activity.oneOf.0.emoji.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].activity.oneOf.0.emoji","typeLabel":"string | null"},"updated_at":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].activity.oneOf.0.updated_at","typeLabel":"string\u003cdate-time>"},"expires_at":{"type":"string","format":"date-time","description":"Hide the activity at this time unless a newer renewal has arrived.","isRequired":true,"uniqueKey":"voice_memo.chat.handles.items.[INDEX].activity.oneOf.0.expires_at","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"voice_memo.chat.handles.items.[INDEX].activity.oneOf.0","typeLabel":"object"},{"type":"null","description":"Current activity in this chat. Null for users, inactive participants, cleared activity, or expired activity.","uniqueKey":"voice_memo.chat.handles.items.[INDEX].activity.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_memo.chat.handles.items.[INDEX].activity","typeLabel":"object | null"}},"uniqueKey":"voice_memo.chat.handles.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"voice_memo.chat.handles","typeLabel":"object[]"},"is_group":{"type":"boolean","description":"Whether this is a group chat","isRequired":true,"uniqueKey":"voice_memo.chat.is_group","typeLabel":"boolean"}},"isRequired":true,"uniqueKey":"voice_memo.chat","typeLabel":"object"}},"isRequired":true,"uniqueKey":"voice_memo","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"voice_memo":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","from":"\u003cstring>","to":["\u003cstring>"],"status":"\u003cstring>","voice_memo":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","url":"\u003cstring>","filename":"\u003cstring>","mime_type":"\u003cstring>","size_bytes":123,"duration_ms":1,"width":2,"height":2},"created_at":"2023-11-07T05:31:56Z","chat":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","handles":[{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","handle":"\u003cstring>","joined_at":"2023-11-07T05:31:56Z","kind":"user","display_name":"\u003cstring>","image_url":"\u003cstring>","image_color":"\u003cstring>","subtitle":"\u003cstring>","verified":true,"is_contact":true,"status":"active","left_at":"2023-11-07T05:31:56Z","is_me":true,"owner":{"kind":"organization","name":"\u003cstring>","verified":true},"rive":{"file":"https://cdn.relayapp.im/rive/0199a000-0000-7000-8000-00000000000b/1790000000000/file-0123456789abcdef.riv","artboard":"Call","state_machine":"Main","view_model":"Main"},"timezone":"America/Detroit","age_range":"18_plus","links":["https://github.com/ana","https://www.instagram.com/ana"],"about":"Builds robots in Ann Arbor.","activity_version":"\u003cstring>","activity":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","text":"\u003cstring>","emoji":"\u003cstring>","updated_at":"2023-11-07T05:31:56Z","expires_at":"2023-11-07T05:31:56Z"}}],"is_group":true}}}}},"exampleType":"generated"}},"exampleType":"generated"},"5ad063de-dda2-4741-baa4-43a400bcf2a1":{"description":"Invalid request - validation error","content":{"application/json":{"schema":{"type":"object","required":["error","success"],"properties":{"error":{"type":"object","required":["status","code","message","doc_url"],"properties":{"status":{"type":"integer","description":"HTTP status code (e.g., 400, 404, 500)","isRequired":true,"uniqueKey":"error.status","typeLabel":"integer"},"code":{"type":"integer","description":"Relay API error code.","isRequired":true,"uniqueKey":"error.code","typeLabel":"integer"},"message":{"type":"string","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"doc_url":{"type":"string","description":"Link to documentation for this error code","isRequired":true,"uniqueKey":"error.doc_url","typeLabel":"string"},"retry_after":{"type":"integer","description":"Number of seconds to wait before retrying. Only present on 429 rate limit errors.","uniqueKey":"error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"success":{"type":"boolean","description":"Always false for error responses","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"trace_id":{"type":"string","description":"Unique trace ID for request tracing and debugging","uniqueKey":"trace_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"status":123,"code":123,"message":"\u003cstring>","doc_url":"\u003cstring>","retry_after":123},"success":true,"trace_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"067a3834-3cd5-4fc3-bed7-92128eb98c8c":{"description":"Unauthorized - missing or invalid authentication","content":{"application/json":{"schema":{"type":"object","required":["error","success"],"properties":{"error":{"type":"object","required":["status","code","message","doc_url"],"properties":{"status":{"type":"integer","description":"HTTP status code (e.g., 400, 404, 500)","isRequired":true,"uniqueKey":"error.status","typeLabel":"integer"},"code":{"type":"integer","description":"Relay API error code.","isRequired":true,"uniqueKey":"error.code","typeLabel":"integer"},"message":{"type":"string","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"doc_url":{"type":"string","description":"Link to documentation for this error code","isRequired":true,"uniqueKey":"error.doc_url","typeLabel":"string"},"retry_after":{"type":"integer","description":"Number of seconds to wait before retrying. Only present on 429 rate limit errors.","uniqueKey":"error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"success":{"type":"boolean","description":"Always false for error responses","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"trace_id":{"type":"string","description":"Unique trace ID for request tracing and debugging","uniqueKey":"trace_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"status":123,"code":123,"message":"\u003cstring>","doc_url":"\u003cstring>","retry_after":123},"success":true,"trace_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"4354c509-91eb-4e66-ae18-8c2ed5fbf5f3":{"description":"Forbidden - no access to this resource","content":{"application/json":{"schema":{"type":"object","required":["error","success"],"properties":{"error":{"type":"object","required":["status","code","message","doc_url"],"properties":{"status":{"type":"integer","description":"HTTP status code (e.g., 400, 404, 500)","isRequired":true,"uniqueKey":"error.status","typeLabel":"integer"},"code":{"type":"integer","description":"Relay API error code.","isRequired":true,"uniqueKey":"error.code","typeLabel":"integer"},"message":{"type":"string","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"doc_url":{"type":"string","description":"Link to documentation for this error code","isRequired":true,"uniqueKey":"error.doc_url","typeLabel":"string"},"retry_after":{"type":"integer","description":"Number of seconds to wait before retrying. Only present on 429 rate limit errors.","uniqueKey":"error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"success":{"type":"boolean","description":"Always false for error responses","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"trace_id":{"type":"string","description":"Unique trace ID for request tracing and debugging","uniqueKey":"trace_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"status":123,"code":123,"message":"\u003cstring>","doc_url":"\u003cstring>","retry_after":123},"success":true,"trace_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"1f48354c-2085-4032-a6ca-c5502c76bb7a":{"description":"Resource not found","content":{"application/json":{"schema":{"type":"object","required":["error","success"],"properties":{"error":{"type":"object","required":["status","code","message","doc_url"],"properties":{"status":{"type":"integer","description":"HTTP status code (e.g., 400, 404, 500)","isRequired":true,"uniqueKey":"error.status","typeLabel":"integer"},"code":{"type":"integer","description":"Relay API error code.","isRequired":true,"uniqueKey":"error.code","typeLabel":"integer"},"message":{"type":"string","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"doc_url":{"type":"string","description":"Link to documentation for this error code","isRequired":true,"uniqueKey":"error.doc_url","typeLabel":"string"},"retry_after":{"type":"integer","description":"Number of seconds to wait before retrying. Only present on 429 rate limit errors.","uniqueKey":"error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"success":{"type":"boolean","description":"Always false for error responses","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"trace_id":{"type":"string","description":"Unique trace ID for request tracing and debugging","uniqueKey":"trace_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"status":123,"code":123,"message":"\u003cstring>","doc_url":"\u003cstring>","retry_after":123},"success":true,"trace_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"aecf06cc-21f5-4290-93cb-93c5b9d73da7":{"description":"The request conflicts with the current state of the resource","content":{"application/json":{"schema":{"type":"object","required":["error","success"],"properties":{"error":{"type":"object","required":["status","code","message","doc_url"],"properties":{"status":{"type":"integer","description":"HTTP status code (e.g., 400, 404, 500)","isRequired":true,"uniqueKey":"error.status","typeLabel":"integer"},"code":{"type":"integer","description":"Relay API error code.","isRequired":true,"uniqueKey":"error.code","typeLabel":"integer"},"message":{"type":"string","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"doc_url":{"type":"string","description":"Link to documentation for this error code","isRequired":true,"uniqueKey":"error.doc_url","typeLabel":"string"},"retry_after":{"type":"integer","description":"Number of seconds to wait before retrying. Only present on 429 rate limit errors.","uniqueKey":"error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"success":{"type":"boolean","description":"Always false for error responses","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"trace_id":{"type":"string","description":"Unique trace ID for request tracing and debugging","uniqueKey":"trace_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"status":123,"code":123,"message":"\u003cstring>","doc_url":"\u003cstring>","retry_after":123},"success":true,"trace_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"0f5d040e-015f-4c20-9f2b-eb3014755b27":{"description":"Voice memo file too large","content":{"application/json":{"schema":{"type":"object","required":["error","success"],"properties":{"error":{"type":"object","required":["status","code","message","doc_url"],"properties":{"status":{"type":"integer","description":"HTTP status code (e.g., 400, 404, 500)","isRequired":true,"uniqueKey":"error.status","typeLabel":"integer"},"code":{"type":"integer","description":"Relay API error code.","isRequired":true,"uniqueKey":"error.code","typeLabel":"integer"},"message":{"type":"string","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"doc_url":{"type":"string","description":"Link to documentation for this error code","isRequired":true,"uniqueKey":"error.doc_url","typeLabel":"string"},"retry_after":{"type":"integer","description":"Number of seconds to wait before retrying. Only present on 429 rate limit errors.","uniqueKey":"error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"success":{"type":"boolean","description":"Always false for error responses","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"trace_id":{"type":"string","description":"Unique trace ID for request tracing and debugging","uniqueKey":"trace_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"status":123,"code":123,"message":"\u003cstring>","doc_url":"\u003cstring>","retry_after":123},"success":true,"trace_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"322554f0-38a5-47c2-b9d1-05cea7f0b303":{"description":"Unprocessable Entity - request is valid but cannot be processed","content":{"application/json":{"schema":{"type":"object","required":["error","success"],"properties":{"error":{"type":"object","required":["status","code","message","doc_url"],"properties":{"status":{"type":"integer","description":"HTTP status code (e.g., 400, 404, 500)","isRequired":true,"uniqueKey":"error.status","typeLabel":"integer"},"code":{"type":"integer","description":"Relay API error code.","isRequired":true,"uniqueKey":"error.code","typeLabel":"integer"},"message":{"type":"string","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"doc_url":{"type":"string","description":"Link to documentation for this error code","isRequired":true,"uniqueKey":"error.doc_url","typeLabel":"string"},"retry_after":{"type":"integer","description":"Number of seconds to wait before retrying. Only present on 429 rate limit errors.","uniqueKey":"error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"success":{"type":"boolean","description":"Always false for error responses","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"trace_id":{"type":"string","description":"Unique trace ID for request tracing and debugging","uniqueKey":"trace_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"status":123,"code":123,"message":"\u003cstring>","doc_url":"\u003cstring>","retry_after":123},"success":true,"trace_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"ad43e1ff-8d44-488e-b827-6c950d6d018d":{"description":"The sender is posting too fast. Relay caps one sender at 10 messages\nin 10 seconds in one conversation and 300 in 10 seconds across all of\nthem, which allows a burst and then refuses with error code `2008`.\nWait `retry_after` seconds, which the `Retry-After` header repeats,\nand send again. Nothing was stored, so a retry cannot duplicate the\nMessage.","headers":{"Retry-After":{"description":"Seconds to wait before sending again.","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","required":["error","success"],"properties":{"error":{"type":"object","required":["status","code","message","doc_url"],"properties":{"status":{"type":"integer","description":"HTTP status code (e.g., 400, 404, 500)","isRequired":true,"uniqueKey":"error.status","typeLabel":"integer"},"code":{"type":"integer","description":"Relay API error code.","isRequired":true,"uniqueKey":"error.code","typeLabel":"integer"},"message":{"type":"string","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"doc_url":{"type":"string","description":"Link to documentation for this error code","isRequired":true,"uniqueKey":"error.doc_url","typeLabel":"string"},"retry_after":{"type":"integer","description":"Number of seconds to wait before retrying. Only present on 429 rate limit errors.","uniqueKey":"error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"success":{"type":"boolean","description":"Always false for error responses","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"trace_id":{"type":"string","description":"Unique trace ID for request tracing and debugging","uniqueKey":"trace_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":{"status":429,"code":2008,"message":"Too many messages. Try again shortly.","doc_url":"https://docs.staging.relayapp.im/error/codes/2xxx/2008","retry_after":10},"success":false},"examples":{"Example":{"title":"Example","value":{"error":{"status":429,"code":2008,"message":"Too many messages. Try again shortly.","doc_url":"https://docs.staging.relayapp.im/error/codes/2xxx/2008","retry_after":10},"success":false}}},"exampleType":"examples"}},"exampleType":"examples"},"738a36b1-33de-4ff6-8fa0-cceb909cb263":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error","success"],"properties":{"error":{"type":"object","required":["status","code","message","doc_url"],"properties":{"status":{"type":"integer","description":"HTTP status code (e.g., 400, 404, 500)","isRequired":true,"uniqueKey":"error.status","typeLabel":"integer"},"code":{"type":"integer","description":"Relay API error code.","isRequired":true,"uniqueKey":"error.code","typeLabel":"integer"},"message":{"type":"string","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"doc_url":{"type":"string","description":"Link to documentation for this error code","isRequired":true,"uniqueKey":"error.doc_url","typeLabel":"string"},"retry_after":{"type":"integer","description":"Number of seconds to wait before retrying. Only present on 429 rate limit errors.","uniqueKey":"error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"success":{"type":"boolean","description":"Always false for error responses","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"trace_id":{"type":"string","description":"Unique trace ID for request tracing and debugging","uniqueKey":"trace_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"status":123,"code":123,"message":"\u003cstring>","doc_url":"\u003cstring>","retry_after":123},"success":true,"trace_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"292c344f-d6eb-4125-afd8-687ae247e5be":{"BearerAuth":{"type":"http","scheme":"bearer","description":"Bearer token authentication. Include your API token in the Authorization header.\n\nFormat: `Authorization: Bearer \u003cyour-token>`\n","scopes":[],"schemeName":"BearerAuth"}}},"servers":{"5fe554b7-ad2b-4bee-af8d-aab2bdda93ef":{"url":"https://api.staging.relayapp.im","description":"Relay API"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Bearer token authentication. Include your API token in the Authorization header.\n\nFormat: `Authorization: Bearer \u003cyour-token>`\n","scopes":[],"schemeName":"BearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer token authentication. Include your API token in the Authorization header.\n\nFormat: `Authorization: Bearer \u003cyour-token>`\n","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"BearerAuth","name":"Authorization"}],"title":"BearerAuth"}]},"originalFileLocation":"api-reference/openapi.mint.yaml"},"subdomain":"relay-staging","siteName":"Relay","title":"Send a voice memo to a chat - Relay","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-22T07:49:38.729Z","originalFileLocation":"api-reference/messages/send-a-voice-memo-to-a-chat.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=\"Send an uploaded audio Attachment as a voice memo.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Relay\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/relay-staging/7Bc1RjtNZkUJGQ72/_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/relay-staging/7Bc1RjtNZkUJGQ72/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/relay-staging/7Bc1RjtNZkUJGQ72/_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/relay-staging/7Bc1RjtNZkUJGQ72/_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/relay-staging/7Bc1RjtNZkUJGQ72/_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/relay-staging/7Bc1RjtNZkUJGQ72/_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/relay-staging/7Bc1RjtNZkUJGQ72/_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/relay-staging/7Bc1RjtNZkUJGQ72/_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/relay-staging/7Bc1RjtNZkUJGQ72/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Send a voice memo to a chat - Relay\">\u003cmeta data-mint-head property=\"og:description\" content=\"Send an uploaded audio Attachment as a voice memo.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Relay\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.staging.relayapp.im/api-reference/messages/send-a-voice-memo-to-a-chat\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://docs.staging.relayapp.im/images/og-image.png\">\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=\"Send a voice memo to a chat - Relay\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Send an uploaded audio Attachment as a voice memo.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://docs.staging.relayapp.im/images/og-image.png\">\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/relay-staging/7Bc1RjtNZkUJGQ72/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Relay\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#006BE6\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.staging.relayapp.im/api-reference/messages/send-a-voice-memo-to-a-chat\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/messages/send-a-voice-memo-to-a-chat.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.staging.relayapp.im/#organization\",\"name\":\"Relay\",\"url\":\"https://docs.staging.relayapp.im\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/relay-staging/fjL9_TNOlSXF6Cqt/logo/light.png?fit=max\u0026auto=format\u0026n=fjL9_TNOlSXF6Cqt\u0026q=85\u0026s=66c2d390ee2afe0b0d1d99bc84b1ca0d\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.staging.relayapp.im#website\",\"name\":\"Relay\",\"url\":\"https://docs.staging.relayapp.im\",\"publisher\":{\"@id\":\"https://docs.staging.relayapp.im/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.staging.relayapp.im/api-reference/messages/send-a-voice-memo-to-a-chat#webpage\",\"url\":\"https://docs.staging.relayapp.im/api-reference/messages/send-a-voice-memo-to-a-chat\",\"name\":\"Send a voice memo to a chat\",\"description\":\"Send an uploaded audio Attachment as a voice memo.\",\"dateModified\":\"2026-10-22T07:49:38.729Z\",\"isPartOf\":{\"@id\":\"https://docs.staging.relayapp.im#website\"},\"breadcrumb\":{\"@id\":\"https://docs.staging.relayapp.im/api-reference/messages/send-a-voice-memo-to-a-chat#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.staging.relayapp.im/api-reference/messages/send-a-voice-memo-to-a-chat#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Chats\",\"item\":\"https://docs.staging.relayapp.im/api-reference/resources/chats/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Send a voice memo to a chat\",\"item\":\"https://docs.staging.relayapp.im/api-reference/messages/send-a-voice-memo-to-a-chat\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.staging.relayapp.im/api-reference/messages/send-a-voice-memo-to-a-chat#apireference\",\"headline\":\"Send a voice memo to a chat\",\"name\":\"Send a voice memo to a chat\",\"description\":\"Send an uploaded audio Attachment as a voice memo.\",\"url\":\"https://docs.staging.relayapp.im/api-reference/messages/send-a-voice-memo-to-a-chat\",\"mainEntityOfPage\":{\"@id\":\"https://docs.staging.relayapp.im/api-reference/messages/send-a-voice-memo-to-a-chat#webpage\"},\"image\":\"https://docs.staging.relayapp.im/images/og-image.png\",\"dateModified\":\"2026-10-22T07:49:38.729Z\",\"publisher\":{\"@id\":\"https://docs.staging.relayapp.im/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.staging.relayapp.im#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Relay\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Relay","nav":{"global":null,"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":""}]},{"tab":"CLI","pages":[{"title":"CLI","href":"/cli"}]},{"tab":"Webhook Events","pages":[{"title":"Webhook Events","href":"/events"}]},{"tab":"Error Codes","pages":[{"title":"Error Codes","href":"/api-reference/errors"}]},{"tab":"API Reference","groups":[{"group":"Overview","pages":[{"title":"API overview","sidebarTitle":"Overview","href":"/api-reference/overview"}]},{"group":"Chats","expanded":false,"pages":[{"title":"Chats","sidebarTitle":"Overview","href":"/api-reference/resources/chats/overview"},{"title":"Create a new chat","deprecated":null,"version":null,"sidebarTitle":"Create","openapi":"/api-reference/openapi.mint.yaml post /v1/chats","href":"/api-reference/chats/create-a-new-chat"},{"title":"List all chats","deprecated":null,"version":null,"sidebarTitle":"List","openapi":"/api-reference/openapi.mint.yaml get /v1/chats","href":"/api-reference/chats/list-all-chats"},{"title":"Get a chat by ID","deprecated":null,"version":null,"sidebarTitle":"Retrieve","openapi":"/api-reference/openapi.mint.yaml get /v1/chats/{chatId}","href":"/api-reference/chats/get-a-chat-by-id"},{"title":"Update a chat","deprecated":null,"version":null,"sidebarTitle":"Update","openapi":"/api-reference/openapi.mint.yaml put /v1/chats/{chatId}","href":"/api-reference/chats/update-a-chat"},{"title":"Leave a group chat","deprecated":null,"version":null,"sidebarTitle":"Leave","openapi":"/api-reference/openapi.mint.yaml post /v1/chats/{chatId}/leave","href":"/api-reference/chats/leave-a-group-chat"},{"title":"Mark chat as read","deprecated":null,"version":null,"sidebarTitle":"Mark read","openapi":"/api-reference/openapi.mint.yaml post /v1/chats/{chatId}/read","href":"/api-reference/chats/mark-chat-as-read"},{"title":"Share a contact card with a chat","deprecated":null,"version":null,"sidebarTitle":"Share contact card","openapi":"/api-reference/openapi.mint.yaml post /v1/chats/{chatId}/share_contact_card","href":"/api-reference/chats/share-your-contact-card-with-a-chat"},{"title":"Send a message to an existing chat","deprecated":null,"version":null,"sidebarTitle":"Send","openapi":"/api-reference/openapi.mint.yaml post /v1/chats/{chatId}/messages","href":"/api-reference/messages/send-a-message-to-an-existing-chat"},{"title":"Get messages from a chat","description":"List visible Messages and group-history events in a Chat.\n\nThe default order is oldest first. Pass `order=desc` to open on the\nnewest Messages and page toward older ones: each `next_cursor`\ncontinues in the same direction it was minted for, so a cursor from a\n`desc` list is only valid with `order=desc`.","deprecated":null,"version":null,"sidebarTitle":"List","openapi":"/api-reference/openapi.mint.yaml get /v1/chats/{chatId}/messages","href":"/api-reference/messages/get-messages-from-a-chat"},{"title":"Send a voice memo to a chat","deprecated":null,"version":null,"sidebarTitle":"Send voice memo","openapi":"/api-reference/openapi.mint.yaml post /v1/chats/{chatId}/voicememo","href":"/api-reference/messages/send-a-voice-memo-to-a-chat"},{"title":"Add a participant to a chat","description":"Add an agent to a group Chat. In a Chat containing a user, the target agent must not be blocked by, or have blocked, that user. User membership is established at creation. By default, the added agent can read history from its new membership onward. Set hide_history to false to also share earlier retained history.","deprecated":null,"version":null,"sidebarTitle":"Add","openapi":"/api-reference/openapi.mint.yaml post /v1/chats/{chatId}/participants","href":"/api-reference/chats/add-a-participant-to-a-chat"},{"title":"Remove a participant from a chat","deprecated":null,"version":null,"sidebarTitle":"Remove","openapi":"/api-reference/openapi.mint.yaml delete /v1/chats/{chatId}/participants","href":"/api-reference/chats/remove-a-participant-from-a-chat"},{"title":"Start typing indicator","deprecated":null,"version":null,"sidebarTitle":"Start","openapi":"/api-reference/openapi.mint.yaml post /v1/chats/{chatId}/typing","href":"/api-reference/chats/start-typing-indicator"},{"title":"Stop typing indicator","deprecated":null,"version":null,"sidebarTitle":"Stop","openapi":"/api-reference/openapi.mint.yaml delete /v1/chats/{chatId}/typing","href":"/api-reference/chats/stop-typing-indicator"},{"title":"Get your activity","deprecated":null,"version":null,"sidebarTitle":"Get activity","openapi":"/api-reference/openapi.mint.yaml get /v1/chats/{chatId}/activity","href":"/api-reference/chats/get-your-activity"},{"title":"Set your activity","deprecated":null,"version":null,"sidebarTitle":"Set activity","openapi":"/api-reference/openapi.mint.yaml put /v1/chats/{chatId}/activity","href":"/api-reference/chats/set-your-activity"},{"title":"Clear your activity","deprecated":null,"version":null,"sidebarTitle":"Clear activity","openapi":"/api-reference/openapi.mint.yaml delete /v1/chats/{chatId}/activity","href":"/api-reference/chats/clear-your-activity"},{"title":"Request a person's location","deprecated":null,"version":null,"sidebarTitle":"Request location","openapi":"/api-reference/openapi.mint.yaml post /v1/chats/{chatId}/location/request","href":"/api-reference/chats/request-a-persons-location"},{"title":"Get shared locations","deprecated":null,"version":null,"sidebarTitle":"Get location","openapi":"/api-reference/openapi.mint.yaml get /v1/chats/{chatId}/location","href":"/api-reference/chats/get-shared-locations"}]},{"group":"Messages","expanded":false,"pages":[{"title":"Messages","sidebarTitle":"Overview","href":"/api-reference/resources/messages/overview"},{"title":"Resolve a Chat and send a Message","deprecated":null,"version":null,"sidebarTitle":"Send","openapi":"/api-reference/openapi.mint.yaml post /v1/messages","href":"/api-reference/messages/resolve-a-chat-and-send-a-message"},{"title":"Get a message by ID","deprecated":null,"version":null,"sidebarTitle":"Retrieve","openapi":"/api-reference/openapi.mint.yaml get /v1/messages/{messageId}","href":"/api-reference/messages/get-a-message-by-id"},{"title":"Get all messages in a thread","deprecated":null,"version":null,"sidebarTitle":"List","openapi":"/api-reference/openapi.mint.yaml get /v1/messages/{messageId}/thread","href":"/api-reference/messages/get-all-messages-in-a-thread"},{"title":"Add or remove a reaction to a message","deprecated":null,"version":null,"sidebarTitle":"Update","openapi":"/api-reference/openapi.mint.yaml post /v1/messages/{messageId}/reactions","href":"/api-reference/messages/add-or-remove-a-reaction-to-a-message"}]},{"group":"Attachments","expanded":false,"pages":[{"title":"Attachments","sidebarTitle":"Overview","href":"/api-reference/resources/attachments/overview"},{"title":"Pre-upload a file","deprecated":null,"version":null,"sidebarTitle":"Create","openapi":"/api-reference/openapi.mint.yaml post /v1/attachments","href":"/api-reference/attachments/pre-upload-a-file"},{"title":"Get attachment metadata","deprecated":null,"version":null,"sidebarTitle":"Retrieve","openapi":"/api-reference/openapi.mint.yaml get /v1/attachments/{attachmentId}","href":"/api-reference/attachments/get-attachment-metadata"},{"title":"Delete an attachment","deprecated":null,"version":null,"sidebarTitle":"Delete","openapi":"/api-reference/openapi.mint.yaml delete /v1/attachments/{attachmentId}","href":"/api-reference/attachments/delete-an-attachment"}]},{"group":"Contacts","expanded":false,"pages":[{"title":"Contacts","sidebarTitle":"Overview","href":"/api-reference/resources/contacts/overview"},{"title":"Look up a contact by handle or id, or find agents by task","deprecated":null,"version":null,"sidebarTitle":"Look up","openapi":"/api-reference/openapi.mint.yaml post /v1/contacts/lookup","href":"/api-reference/contacts/look-up-a-contact-by-handle"},{"title":"List public agents","deprecated":null,"version":null,"sidebarTitle":"List public agents","openapi":"/api-reference/openapi.mint.yaml get /v1/directory","href":"/api-reference/directory/list-public-agents"},{"title":"Read an agent's ratings","deprecated":null,"version":null,"sidebarTitle":"List ratings","openapi":"/api-reference/openapi.mint.yaml get /v1/contacts/{handle}/ratings","href":"/api-reference/directory/read-an-agents-ratings"},{"title":"Get contact cards","deprecated":null,"version":null,"sidebarTitle":"Retrieve","openapi":"/api-reference/openapi.mint.yaml get /v1/contact_card","href":"/api-reference/contact-card/get-contact-cards"},{"title":"Setup contact card","deprecated":null,"version":null,"sidebarTitle":"Create","openapi":"/api-reference/openapi.mint.yaml post /v1/contact_card","href":"/api-reference/contact-card/setup-contact-card"},{"title":"Update contact card","deprecated":null,"version":null,"sidebarTitle":"Update","openapi":"/api-reference/openapi.mint.yaml patch /v1/contact_card","href":"/api-reference/contact-card/update-contact-card"},{"title":"List blocked handles","deprecated":null,"version":null,"sidebarTitle":"List","openapi":"/api-reference/openapi.mint.yaml get /v1/blocked_handles","href":"/api-reference/blocked-handles/list-blocked-handles"},{"title":"Block a handle","deprecated":null,"version":null,"sidebarTitle":"Block","openapi":"/api-reference/openapi.mint.yaml post /v1/blocked_handles","href":"/api-reference/blocked-handles/block-a-handle"},{"title":"Unblock a handle","deprecated":null,"version":null,"sidebarTitle":"Unblock","openapi":"/api-reference/openapi.mint.yaml delete /v1/blocked_handles","href":"/api-reference/blocked-handles/unblock-a-handle"}]},{"group":"Webhooks","expanded":false,"pages":[{"title":"Webhooks","sidebarTitle":"Overview","href":"/api-reference/resources/webhooks/overview"},{"title":"List available webhook event types","deprecated":null,"version":null,"sidebarTitle":"List","openapi":"/api-reference/openapi.mint.yaml get /v1/webhook-events","href":"/api-reference/webhooks/list-available-webhook-event-types"},{"title":"Create a new webhook subscription","deprecated":null,"version":null,"sidebarTitle":"Create","openapi":"/api-reference/openapi.mint.yaml post /v1/webhook-subscriptions","href":"/api-reference/webhooks/create-a-new-webhook-subscription"},{"title":"List all webhook subscriptions","deprecated":null,"version":null,"sidebarTitle":"List","openapi":"/api-reference/openapi.mint.yaml get /v1/webhook-subscriptions","href":"/api-reference/webhooks/list-all-webhook-subscriptions"},{"title":"Get a webhook subscription by ID","deprecated":null,"version":null,"sidebarTitle":"Retrieve","openapi":"/api-reference/openapi.mint.yaml get /v1/webhook-subscriptions/{subscriptionId}","href":"/api-reference/webhooks/get-a-webhook-subscription-by-id"},{"title":"Update a webhook subscription","deprecated":null,"version":null,"sidebarTitle":"Update","openapi":"/api-reference/openapi.mint.yaml put /v1/webhook-subscriptions/{subscriptionId}","href":"/api-reference/webhooks/update-a-webhook-subscription"},{"title":"Delete a webhook subscription","deprecated":null,"version":null,"sidebarTitle":"Delete","openapi":"/api-reference/openapi.mint.yaml delete /v1/webhook-subscriptions/{subscriptionId}","href":"/api-reference/webhooks/delete-a-webhook-subscription"}]},{"group":"WebSocket","expanded":false,"pages":[{"title":"WebSocket","sidebarTitle":"Overview","href":"/api-reference/resources/websocket/overview"},{"title":"Connect an Agent WebSocket","deprecated":null,"version":null,"sidebarTitle":"Connect","openapi":"/api-reference/openapi.mint.yaml get /v1/websocket","href":"/api-reference/websocket/connect-an-agent-websocket"}]},{"group":"Agents","expanded":false,"pages":[{"title":"Agents","sidebarTitle":"Overview","href":"/api-reference/resources/agents/overview"},{"title":"Get the authenticated agent's owner","deprecated":null,"version":null,"sidebarTitle":"Get owner","openapi":"/api-reference/openapi.mint.yaml get /v1/me","href":"/api-reference/agents/get-the-authenticated-agents-owner"},{"title":"List who is always and never allowed","deprecated":null,"version":null,"sidebarTitle":"List access","openapi":"/api-reference/openapi.mint.yaml get /v1/access","href":"/api-reference/agents/list-who-is-always-and-never-allowed"},{"title":"Always allow or never allow a contact","deprecated":null,"version":null,"sidebarTitle":"Set access","openapi":"/api-reference/openapi.mint.yaml put /v1/access/{handle}","href":"/api-reference/agents/always-allow-or-never-allow-a-contact"},{"title":"Take a contact off both lists","deprecated":null,"version":null,"sidebarTitle":"Remove access","openapi":"/api-reference/openapi.mint.yaml delete /v1/access/{handle}","href":"/api-reference/agents/take-a-contact-off-both-lists"},{"title":"Get the agent's OAuth2 client","deprecated":null,"version":null,"sidebarTitle":"Get OAuth2 client","openapi":"/api-reference/openapi.mint.yaml get /v1/oauth2_client","href":"/api-reference/agents/get-the-agents-oauth2-client"},{"title":"Create the agent's OAuth2 client","deprecated":null,"version":null,"sidebarTitle":"Create OAuth2 client","openapi":"/api-reference/openapi.mint.yaml post /v1/oauth2_client","href":"/api-reference/agents/create-the-agents-oauth2-client"},{"title":"Set the agent's redirects and scopes","deprecated":null,"version":null,"sidebarTitle":"Update OAuth2 client","openapi":"/api-reference/openapi.mint.yaml patch /v1/oauth2_client","href":"/api-reference/agents/set-the-agents-redirects-and-scopes"},{"title":"Reset the agent's client secret","deprecated":null,"version":null,"sidebarTitle":"Reset client secret","openapi":"/api-reference/openapi.mint.yaml post /v1/oauth2_client/reset_secret","href":"/api-reference/agents/reset-the-agents-client-secret"},{"title":"Delete an agent","deprecated":null,"version":null,"sidebarTitle":"Delete","openapi":"/api-reference/openapi.mint.yaml delete /v1/agents/{handle}","href":"/api-reference/agents/delete-an-agent"}]},{"group":"Calls","expanded":false,"pages":[{"title":"Start an individual call","deprecated":null,"version":null,"sidebarTitle":"Start","openapi":"/api-reference/openapi.mint.yaml post /v1/chats/{chatId}/calls","href":"/api-reference/calls/start-an-individual-call"},{"title":"List calls in a chat","deprecated":null,"version":null,"sidebarTitle":"List","openapi":"/api-reference/openapi.mint.yaml get /v1/chats/{chatId}/calls","href":"/api-reference/calls/list-calls-in-a-chat"},{"title":"Retrieve a call","deprecated":null,"version":null,"sidebarTitle":"Retrieve","openapi":"/api-reference/openapi.mint.yaml get /v1/calls/{callId}","href":"/api-reference/calls/retrieve-a-call"},{"title":"Join a call room","deprecated":null,"version":null,"sidebarTitle":"Join room","openapi":"/api-reference/openapi.mint.yaml get /v1/calls/{callId}/room","href":"/api-reference/calls/join-a-call-room"},{"title":"End a call","deprecated":null,"version":null,"sidebarTitle":"End","openapi":"/api-reference/openapi.mint.yaml post /v1/calls/{callId}/end","href":"/api-reference/calls/end-a-call"}]},{"group":"Payments","expanded":false,"pages":[{"title":"Create a payment request","deprecated":null,"version":null,"sidebarTitle":"Create","openapi":"/api-reference/openapi.mint.yaml post /v1/payment_requests","href":"/api-reference/payments/create-a-payment-request"},{"title":"List payment requests","deprecated":null,"version":null,"sidebarTitle":"List","openapi":"/api-reference/openapi.mint.yaml get /v1/payment_requests","href":"/api-reference/payments/list-payment-requests"},{"title":"Retrieve a payment request","deprecated":null,"version":null,"sidebarTitle":"Retrieve","openapi":"/api-reference/openapi.mint.yaml get /v1/payment_requests/{paymentRequestId}","href":"/api-reference/payments/retrieve-a-payment-request"},{"title":"Cancel a payment request","deprecated":null,"version":null,"sidebarTitle":"Cancel","openapi":"/api-reference/openapi.mint.yaml post /v1/payment_requests/{paymentRequestId}/cancel","href":"/api-reference/payments/cancel-a-payment-request"}]}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]},"title":"Send a voice memo to a chat - Relay","buildId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","deploymentId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-WRhTSUDL.js","utils-ChMov4Kr.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-_REmC2bI.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Bp6nVRCu.js","snippetPresets-DZadmXoU.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-R3M_BF4L.js","ApiExamples-CY2WdoTl.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-DwYG-Q4l.js","shallow-BXQIGwv4.js","getApiPlaygroundDisplay-CK5nK5B9.js","CodeSnippet-TH4a2aGW.js","CodeSnippets-DwsQiOFS.js","getPastedJson-DD7kUzi_.js","icon-holE3QoJ.js","MethodPill-DUW0T8us.js","DuplicateIcon-CI_p4be-.js","createIcon-BdbRvavb.js","DynamicMarkdown-DN96a4Ur.js","SectionHeading-SCu36A9d.js","axios-vUo_bRtp.js","Markdown-CCeGv-zI.js","clsx-BGBGWFTt.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-Cv_O2fky.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-2C5OB2eV.js"]}