Route incoming phone and SIP calls to Daily rooms via webhook, without requiring callers to enter a PIN code.
Pinless dial-in and SIP Interconnect allow incoming calls to trigger a webhook on your infrastructure, which then routes the call to a Daily room — no PIN required from the caller.This pattern is common in contact centers, voice bots, and IVR flows where the destination room isn’t known at call time.
You can omit phone_number for SIP Interconnect (no phone number needed). Otherwise, phone_number is required and must be a number purchased from Daily.The response is the room’s config object, including an array of pinless_dialin entries, each with a static sip_uri and the corresponding room_creation_api URL — the sip_uri is the address your SIP system dials for interconnect flows:
Daily generates each sip_uri for your domain. Copy the exact value from the API response and store it. Do not build the address by hand and do not change any part of it.Incoming calls are matched against the exact address Daily generated. If your SIP system dials an address you built yourself, or an edited version of the real one, the call will not match. Daily ends the call, your room_creation_api webhook never fires, and you see no sign of the call at all.
When you configure pinless_dialin, Daily sends a test request to your room_creation_api endpoint with the body {"test": "test"}. This test request is sent every time you configure pinless_dialin, not only the first time. It only checks that your endpoint is reachable. Your endpoint is still configured even if it does not return a 200 response, so that existing domains that do not recognize the test body keep working.This test request always carries an X-Pinless-Timestamp header. If you set an hmac on your pinless_dialin config, it is also signed the same way a real call is, with an X-Pinless-Signature header. Daily gives your endpoint 8 seconds to respond.Do not use “my webhook was called” as proof that call routing works. The test request looks nothing like a real call. Only a real incoming call includes callId and callDomain in the body, so check for those two fields when you want to know whether a real call reached you.
callId + callDomain: use these to connect the held call to a Daily room. They are only sent for real calls, never for the config-time test request
sourceIp: the IP address the call was received from — use it to reject calls that did not come from your carrier. Sent for SIP-interconnect calls; omitted entirely for PSTN calls, which have no SIP originator, so treat it as optional
sipHeaders: custom SIP headers sent to the sip_uri (e.g., for external SIP systems forwarding caller context). For example, when you receive a call on your Avaya on-premise SIP server and need to send the caller phone and called phone, the to and from fields will already be the Avaya sip addresses. In that case, you can add custom sip headers prepended with an x-. This would be something like 8a1f0c4e2b7d9351--1739943585193@daily-8a1f0c4e2b7d9351-pinless-sip.dapp.signalwire.com?x-caller=7861230000&x-called=6501230000.
Each pinless_dialin entry has an hmac — a Base64-encoded HMAC-SHA256 secret shared between Daily and your server. Use it to verify that the webhook came from Daily.Daily includes two headers with each webhook request:
X-Pinless-Timestamp
X-Pinless-Signature
To verify:
// You'll need to save the hmac value the API returned when you created your webhook and insert it hereconst hmacSecret = 'NQrSA5z0FkJ44QPrFerW7uCc5kdNLv3l2FDEKDanL1U=';const signature = headers['X-Pinless-Timestamp'] + '.' + JSON.stringify(body);const base64DecodedSecret = Buffer.from(hmacSecret, 'base64');const hmac = crypto.createHmac('sha256', base64DecodedSecret);const computedSignature = hmac.update(signature).digest('base64');// computedSignature should match headers['X-Pinless-Signature']
You can provide your own Base64-encoded secret in the hmac field when configuring. If omitted, Daily generates a new one each time you update pinless_dialin.
Keep your hmac secret private. Anyone with it can forge webhook requests.
Calling pinlessCallUpdate before dialin-ready fires may cause the call to drop.
Make sure the sip_uri you provide is not already in use by another SIP client. See multiple SIP endpoints for provisioning multiple endpoints per room.For building voice bots with this pattern, see the Pipecat dial-in docs.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Daily","colors":{"primary":"#FF6E4A","light":"#FF6E4A","dark":"#141c24"},"logo":{"light":"https://mintcdn.com/daily-co/UZ5SeZfPxiPGRDvT/logo/light.svg?fit=max\u0026auto=format\u0026n=UZ5SeZfPxiPGRDvT\u0026q=85\u0026s=e96bdb062d7c5b0d12c9b0e155ca32ee","dark":"https://mintcdn.com/daily-co/UZ5SeZfPxiPGRDvT/logo/dark.svg?fit=max\u0026auto=format\u0026n=UZ5SeZfPxiPGRDvT\u0026q=85\u0026s=f537bd7ef1b96c7b50130240a5a98111"},"favicon":"https://mintcdn.com/daily-co/UZ5SeZfPxiPGRDvT/favicon.ico?fit=max\u0026auto=format\u0026n=UZ5SeZfPxiPGRDvT\u0026q=85\u0026s=c35fb5852ca7a1df9ca8a63ef3a9b26b","api":{"openapi":"openapi.json","mdx":{"auth":{"method":"bearer"}}},"navbar":{"links":[{"icon":"discord","href":"https://discord.com/invite/dailyco","label":"Discord"}],"primary":{"type":"button","label":"Dashboard","href":"https://dashboard.daily.co"}},"footer":{"socials":{"x":"https://x.com/dailyco","github":"https://github.com/daily-co","discord":"https://discord.com/invite/dailyco"},"links":[{"header":"Company","items":[{"label":"Blog","href":"https://blog.daily.co"},{"label":"Pipecat","href":"https://docs.pipecat.ai"}]}]},"integrations":{"cookies":{"key":"daily_analytics_consent","value":"granted"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"daily-co","hasAudioNarration":false,"actualSubdomain":"daily-co","customDomains":["docs.daily.co"],"gitSource":{"type":"github","owner":"daily-co","repo":"daily-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"collectionId":"c517bf74-a3b0-4408-a32c-fd3e07743699","liveDeploymentHistoryId":"6ada298d959c31025f5842e1","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ada298d959c31025f5842e1"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ada298d959c31025f5842e1","clientVersion":"0.0.3990","searchFilterCounts":[{"language":"default","tag":"Reference","count":411},{"language":"default","tag":"Instance Methods","count":202},{"language":"default","tag":"Daily JS","count":168},{"language":"default","tag":"Documentation","count":121},{"language":"default","tag":"REST API","count":118},{"language":"default","tag":"React Native","count":110},{"language":"default","tag":"Daily React","count":60},{"language":"default","tag":"Events","count":58},{"language":"default","tag":"Guides","count":40},{"language":"default","tag":"Hooks","count":39}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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}],"privacy":{"consentBanner":{"enabled":false}},"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"custom.css","content":".peer.is-center~.peer-\\[\\.is-center\\]\\:max-w-3xl{max-width:75rem;padding:0 3rem}"}],"page":{"pagePath":"docs/guides/features/dial-in-dial-out/sip-interconnect-pinless","slug":"/docs/guides/features/dial-in-dial-out/sip-interconnect-pinless","pageMetadata":{"title":"SIP Interconnect and Pinless PSTN dial-in","sidebarTitle":"Pinless dial-in","description":"Route incoming phone and SIP calls to Daily rooms via webhook, without requiring callers to enter a PIN code.","href":"/docs/guides/features/dial-in-dial-out/sip-interconnect-pinless"},"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: \"Route incoming phone and SIP calls to Daily rooms via webhook, without requiring callers to enter a PIN code.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Tip,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Pinless dial-in and SIP Interconnect allow incoming calls to trigger a webhook on your infrastructure, which then routes the call to a Daily room — no PIN required from the caller.`}),`\n`,_jsx(_components.p,{children:`This pattern is common in contact centers, voice bots, and IVR flows where the destination room isn’t known at call time.`}),`\n`,_jsx(Heading,{level:`2`,id:`how-it-works`,children:`How it works`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`A caller dials your purchased phone number or a static SIP URI.`}),`\n`,_jsx(_components.li,{children:`Daily places the caller on hold (hold music plays).`}),`\n`,_jsxs(_components.li,{children:[`Daily sends a webhook to your configured `,_jsx(_components.a,{href:`/reference/rest-api/domain/set-domain-config#body-properties-pinless-dialin-items-room-creation-api`,children:_jsx(_components.code,{children:`room_creation_api`})}),` URL.`]}),`\n`,_jsxs(_components.li,{children:[`Your server creates or selects a Daily room and waits for `,_jsx(_components.a,{href:`/reference/daily-js/events/telephony-events#dialin-ready`,children:_jsx(_components.code,{children:`dialin-ready`})}),` to fire.`]}),`\n`,_jsxs(_components.li,{children:[`Your server calls `,_jsx(_components.a,{href:`/reference/rest-api/dial-in/pinless-update`,children:_jsx(_components.code,{children:`pinlessCallUpdate`})}),` with the room’s `,_jsx(_components.code,{children:`sip_uri`}),` to connect the held caller.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`configure-pinless-dial-in`,children:`Configure pinless dial-in`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.a,{href:`/reference/rest-api/domain/set-domain-config#body-properties-pinless-dialin`,children:`Configure your domain`}),` with a `,_jsx(_components.code,{children:`pinless_dialin`}),` array. Each object represents one incoming number or SIP interconnect:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`24`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`24`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --request`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --url`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://api.daily.co/v1/`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --header`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'Authorization: Bearer $DAILY_API_KEY'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --header`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'Content-Type: application/json'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --data`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"properties\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"pinless_dialin\": [`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"phone_number\": \"$PURCHASED_NUMBER\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"room_creation_api\": \"$WEBHOOK_URL\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"name_prefix\": \"my-pinless-phone\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"hmac\": \"base64-encoded-secret\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"hold_music_url\": \"https://example.com/hold.mp3\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"timeout_config\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"message\": \"Agent not available. Please call later.\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"room_creation_api\": \"$WEBHOOK_URL\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"name_prefix\": \"sip-interconnect\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`You can omit `,_jsx(_components.code,{children:`phone_number`}),` for SIP Interconnect (no phone number needed). Otherwise, `,_jsx(_components.code,{children:`phone_number`}),` is required and must be a number `,_jsx(_components.a,{href:`/reference/rest-api/phone-numbers/index`,children:`purchased from Daily`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`The response is the room’s `,_jsx(_components.code,{children:`config`}),` object, including an array of `,_jsx(_components.code,{children:`pinless_dialin`}),` entries, each with a static `,_jsx(_components.code,{children:`sip_uri`}),` and the corresponding `,_jsx(_components.code,{children:`room_creation_api`}),` URL — the `,_jsx(_components.code,{children:`sip_uri`}),` is the address your SIP system dials for interconnect flows:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`17`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`17`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"config\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"pinless_dialin\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"sip_uri\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"8a1f0c4e2b7d9351--1739943585193@daily-8a1f0c4e2b7d9351-pinless-sip.dapp.signalwire.com\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"phone_number\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"+12095038039\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"room_creation_api\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"https://webhook.example.com/create_room\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"hmac\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"base64-encoded-secret\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"sip_uri\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"8a1f0c4e2b7d9351--1739943585194@daily-8a1f0c4e2b7d9351-pinless-sip.dapp.signalwire.com\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"room_creation_api\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"https://webhook.example.com/handle_twilio\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"hmac\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"base64-encoded-secret\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(Warning,{children:[_jsxs(_components.p,{children:[`Daily generates each `,_jsx(_components.code,{children:`sip_uri`}),` for your domain. Copy the exact value from the API response and store it. Do not build the address by hand and do not change any part of it.`]}),_jsxs(_components.p,{children:[`Incoming calls are matched against the exact address Daily generated. If your SIP system dials an address you built yourself, or an edited version of the real one, the call will not match. Daily ends the call, your `,_jsx(_components.code,{children:`room_creation_api`}),` webhook never fires, and you see no sign of the call at all.`]})]}),`\n`,_jsxs(Tip,{children:[_jsxs(_components.p,{children:[`When you configure `,_jsx(_components.code,{children:`pinless_dialin`}),`, Daily sends a test request to your `,_jsx(_components.code,{children:`room_creation_api`}),` endpoint with the body `,_jsx(_components.code,{children:`{\"test\": \"test\"}`}),`. This test request is sent every time you configure `,_jsx(_components.code,{children:`pinless_dialin`}),`, not only the first time. It only checks that your endpoint is reachable. Your endpoint is still configured even if it does not return a 200 response, so that existing domains that do not recognize the test body keep working.`]}),_jsxs(_components.p,{children:[`This test request always carries an `,_jsx(_components.code,{children:`X-Pinless-Timestamp`}),` header. If you set an `,_jsx(_components.code,{children:`hmac`}),` on your `,_jsx(_components.code,{children:`pinless_dialin`}),` config, it is also signed the same way a real call is, with an `,_jsx(_components.code,{children:`X-Pinless-Signature`}),` header. Daily gives your endpoint 8 seconds to respond.`]}),_jsxs(_components.p,{children:[`Do not use “my webhook was called” as proof that call routing works. The test request looks nothing like a real call. Only a real incoming call includes `,_jsx(_components.code,{children:`callId`}),` and `,_jsx(_components.code,{children:`callDomain`}),` in the body, so check for those two fields when you want to know whether a real call reached you.`]})]}),`\n`,_jsx(Heading,{level:`2`,id:`incoming-webhook-payload`,children:`Incoming webhook payload`}),`\n`,_jsxs(_components.p,{children:[`When a call arrives, Daily POSTs to your `,_jsx(_components.code,{children:`room_creation_api`}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`10`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`10`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"From\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"+CALLERS_PHONE\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"To\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"$PURCHASED_PHONE\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"callId\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"a7bf8461-7d33-4083-9677-5cfdb4f337a5\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"callDomain\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"9c975848-a067-4de0-bf47-1b4179ceba4e\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"sourceIp\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"203.0.113.10\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"sipHeaders\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"x-custom-header\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"value\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`From`}),`: caller’s phone or SIP address`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`To`}),`: your Daily phone number or static SIP URI`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`callId`}),` + `,_jsx(_components.code,{children:`callDomain`}),`: use these to connect the held call to a Daily room. They are only sent for real calls, never for the config-time test request`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`sourceIp`}),`: the IP address the call was received from — use it to reject calls that did not come from your carrier. Sent for SIP-interconnect calls; `,_jsx(_components.strong,{children:`omitted entirely`}),` for PSTN calls, which have no SIP originator, so treat it as optional`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`sipHeaders`}),`: custom SIP headers sent to the `,_jsx(_components.code,{children:`sip_uri`}),` (e.g., for external SIP systems forwarding caller context). For example, when you receive a call on your Avaya on-premise SIP server and need to send the caller phone and called phone, the `,_jsx(_components.code,{children:`to`}),` and `,_jsx(_components.code,{children:`from`}),` fields will already be the Avaya sip addresses. In that case, you can add custom sip headers prepended with an `,_jsx(_components.code,{children:`x-`}),`. This would be something like `,_jsx(_components.code,{children:`8a1f0c4e2b7d9351--1739943585193@daily-8a1f0c4e2b7d9351-pinless-sip.dapp.signalwire.com?x-caller=7861230000\u0026x-called=6501230000`}),`.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`verifying-the-webhook-signature-hmac`,children:`Verifying the webhook signature (HMAC)`}),`\n`,_jsxs(_components.p,{children:[`Each `,_jsx(_components.code,{children:`pinless_dialin`}),` entry has an `,_jsx(_components.code,{children:`hmac`}),` — a Base64-encoded HMAC-SHA256 secret shared between Daily and your server. Use it to verify that the webhook came from Daily.`]}),`\n`,_jsx(_components.p,{children:`Daily includes two headers with each webhook request:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`X-Pinless-Timestamp`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`X-Pinless-Signature`})}),`\n`]}),`\n`,_jsx(_components.p,{children:`To verify:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`javascript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`7`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// You'll need to save the hmac value the API returned when you created your webhook and insert it here`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` hmacSecret`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'NQrSA5z0FkJ44QPrFerW7uCc5kdNLv3l2FDEKDanL1U='`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` signature`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` headers`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'X-Pinless-Timestamp'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`] `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`+`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '.'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` +`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` JSON`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`stringify`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`body`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` base64DecodedSecret`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` Buffer`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`hmacSecret`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'base64'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` hmac`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` crypto`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`createHmac`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'sha256'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`base64DecodedSecret`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` computedSignature`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` hmac`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`update`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`signature`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`).`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`digest`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'base64'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// computedSignature should match headers['X-Pinless-Signature']`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`You can provide your own Base64-encoded secret in the `,_jsx(_components.code,{children:`hmac`}),` field when configuring. If omitted, Daily generates a new one each time you update `,_jsx(_components.code,{children:`pinless_dialin`}),`.`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Keep your `,_jsx(_components.code,{children:`hmac`}),` secret private. Anyone with it can forge webhook requests.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`connecting-the-held-call-to-a-daily-room`,children:`Connecting the held call to a Daily room`}),`\n`,_jsx(_components.p,{children:`Once your webhook handler has created or selected a room:`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`Join the room with a Daily participant (e.g., a Pipecat bot or agent) so the room is active.`}),`\n`,_jsxs(_components.li,{children:[`Wait for `,_jsx(_components.a,{href:`/reference/daily-js/events/telephony-events#dialin-ready`,children:_jsx(_components.code,{children:`dialin-ready`})}),` to fire.`]}),`\n`,_jsxs(_components.li,{children:[`Call `,_jsx(_components.a,{href:`/reference/rest-api/dial-in/pinless-update`,children:_jsx(_components.code,{children:`pinlessCallUpdate`})}),` with the room’s `,_jsx(_components.code,{children:`sip_uri`}),` and the `,_jsx(_components.code,{children:`callId`}),`/`,_jsx(_components.code,{children:`callDomain`}),` from the webhook:`]}),`\n`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`9`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`9`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --request`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --url`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://api.daily.co/v1/dialin/pinlessCallUpdate`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --header`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'Authorization: Bearer $DAILY_API_KEY'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --header`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'Content-Type: application/json'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --data`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"callId\": \"a7bf8461-7d33-4083-9677-5cfdb4f337a5\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"callDomain\": \"9c975848-a067-4de0-bf47-1b4179ceba4e\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"sipUri\": \"sip:room-specific-id@example.sip.daily.co?x-daily_display_name=caller\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Calling `,_jsx(_components.code,{children:`pinlessCallUpdate`}),` before `,_jsx(_components.code,{children:`dialin-ready`}),` fires may cause the call to drop.`]})}),`\n`,_jsxs(_components.p,{children:[`Make sure the `,_jsx(_components.code,{children:`sip_uri`}),` you provide is not already in use by another SIP client. See `,_jsx(_components.a,{href:`/docs/guides/features/dial-in-dial-out/sip#multiple-sip-endpoints`,children:`multiple SIP endpoints`}),` for provisioning multiple endpoints per room.`]}),`\n`,_jsxs(_components.p,{children:[`For building voice bots with this pattern, see the `,_jsx(_components.a,{href:`https://docs.pipecat.ai/pipecat/telephony/daily-pstn`,children:`Pipecat dial-in docs`}),`.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"SIP Interconnect and Pinless PSTN dial-in","sidebarTitle":"Pinless dial-in","description":"Route incoming phone and SIP calls to Daily rooms via webhook, without requiring callers to enter a PIN code.","href":"/docs/guides/features/dial-in-dial-out/sip-interconnect-pinless"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"How it works","slug":"how-it-works","depth":2,"children":[]},{"title":"Configure pinless dial-in","slug":"configure-pinless-dial-in","depth":2,"children":[]},{"title":"Incoming webhook payload","slug":"incoming-webhook-payload","depth":2,"children":[]},{"title":"Verifying the webhook signature (HMAC)","slug":"verifying-the-webhook-signature-hmac","depth":2,"children":[]},{"title":"Connecting the held call to a Daily room","slug":"connecting-the-held-call-to-a-daily-room","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/daily-co/b09599f26eb2661c/kapa-widget.js","/_mintlify/custom/daily-co/7fcc8ce029135af3/gtm.js"],"subdomain":"daily-co","siteName":"Daily","title":"SIP Interconnect and Pinless PSTN dial-in - Daily","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-17T07:46:30.653Z","originalFileLocation":"docs/guides/features/dial-in-dial-out/sip-interconnect-pinless.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=\"Route incoming phone and SIP calls to Daily rooms via webhook, without requiring callers to enter a PIN code.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Daily\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/daily-co/Zqz2RGzK123gGV7q/_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/daily-co/Zqz2RGzK123gGV7q/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/daily-co/Zqz2RGzK123gGV7q/_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/daily-co/Zqz2RGzK123gGV7q/_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/daily-co/Zqz2RGzK123gGV7q/_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/daily-co/Zqz2RGzK123gGV7q/_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/daily-co/Zqz2RGzK123gGV7q/_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/daily-co/Zqz2RGzK123gGV7q/_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/daily-co/Zqz2RGzK123gGV7q/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"SIP Interconnect and Pinless PSTN dial-in - Daily\">\u003cmeta data-mint-head property=\"og:description\" content=\"Route incoming phone and SIP calls to Daily rooms via webhook, without requiring callers to enter a PIN code.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Daily\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.daily.co/docs/guides/features/dial-in-dial-out/sip-interconnect-pinless\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://daily-co.mintlify.app/_mintlify/api/og/v2?division=Dial-in+%2F+Dial-out\u0026amp;title=SIP+Interconnect+and+Pinless+PSTN+dial-in\u0026amp;description=Route+incoming+phone+and+SIP+calls+to+Daily+rooms+via+webhook%2C+without+requiring+callers+to+enter+a+PIN+code.\u0026amp;theme=15766adf3c4c0f043ee3c760\u0026amp;signature=6ce091e49d173a236eef52741935d37e301c1982886cdb3aff24092acf633142\">\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=\"SIP Interconnect and Pinless PSTN dial-in - Daily\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Route incoming phone and SIP calls to Daily rooms via webhook, without requiring callers to enter a PIN code.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://daily-co.mintlify.app/_mintlify/api/og/v2?division=Dial-in+%2F+Dial-out\u0026amp;title=SIP+Interconnect+and+Pinless+PSTN+dial-in\u0026amp;description=Route+incoming+phone+and+SIP+calls+to+Daily+rooms+via+webhook%2C+without+requiring+callers+to+enter+a+PIN+code.\u0026amp;theme=15766adf3c4c0f043ee3c760\u0026amp;signature=6ce091e49d173a236eef52741935d37e301c1982886cdb3aff24092acf633142\">\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/daily-co/Zqz2RGzK123gGV7q/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Daily\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#FF6E4A\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.daily.co/docs/guides/features/dial-in-dial-out/sip-interconnect-pinless\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/guides/features/dial-in-dial-out/sip-interconnect-pinless.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.daily.co/#organization\",\"name\":\"Daily\",\"url\":\"https://docs.daily.co\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/daily-co/UZ5SeZfPxiPGRDvT/logo/light.svg?fit=max\u0026auto=format\u0026n=UZ5SeZfPxiPGRDvT\u0026q=85\u0026s=e96bdb062d7c5b0d12c9b0e155ca32ee\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.daily.co#website\",\"name\":\"Daily\",\"url\":\"https://docs.daily.co\",\"publisher\":{\"@id\":\"https://docs.daily.co/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.daily.co/docs/guides/features/dial-in-dial-out/sip-interconnect-pinless#webpage\",\"url\":\"https://docs.daily.co/docs/guides/features/dial-in-dial-out/sip-interconnect-pinless\",\"name\":\"SIP Interconnect and Pinless PSTN dial-in\",\"description\":\"Route incoming phone and SIP calls to Daily rooms via webhook, without requiring callers to enter a PIN code.\",\"dateModified\":\"2026-09-17T07:46:30.653Z\",\"isPartOf\":{\"@id\":\"https://docs.daily.co#website\"},\"breadcrumb\":{\"@id\":\"https://docs.daily.co/docs/guides/features/dial-in-dial-out/sip-interconnect-pinless#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.daily.co/docs/guides/features/dial-in-dial-out/sip-interconnect-pinless#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Features\",\"item\":\"https://docs.daily.co/docs/guides/features/recording/custom-s3-storage\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dial-in / Dial-out\",\"item\":\"https://docs.daily.co/docs/guides/features/dial-in-dial-out/index\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"SIP Interconnect and Pinless PSTN dial-in\",\"item\":\"https://docs.daily.co/docs/guides/features/dial-in-dial-out/sip-interconnect-pinless\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.daily.co/docs/guides/features/dial-in-dial-out/sip-interconnect-pinless#article\",\"headline\":\"SIP Interconnect and Pinless PSTN dial-in\",\"name\":\"SIP Interconnect and Pinless PSTN dial-in\",\"description\":\"Route incoming phone and SIP calls to Daily rooms via webhook, without requiring callers to enter a PIN code.\",\"url\":\"https://docs.daily.co/docs/guides/features/dial-in-dial-out/sip-interconnect-pinless\",\"mainEntityOfPage\":{\"@id\":\"https://docs.daily.co/docs/guides/features/dial-in-dial-out/sip-interconnect-pinless#webpage\"},\"dateModified\":\"2026-09-17T07:46:30.653Z\",\"publisher\":{\"@id\":\"https://docs.daily.co/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.daily.co#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Daily\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Daily","nav":{"global":null,"tabs":[{"tab":"Home","pages":[{"title":"Home","href":"/"}]},{"tab":"Documentation","dropdowns":[{"dropdown":"Guides","icon":"book","pages":[{"group":"Architecture \u0026 Monitoring","pages":[{"title":"Video Call Architecture (Quick Intro)","sidebarTitle":"Video call architecture","href":"/docs/guides/architecture-and-monitoring/intro-to-video-arch"},{"title":"Global Mesh Network (Mesh SFU)","sidebarTitle":"Global Mesh Network","href":"/docs/guides/architecture-and-monitoring/global-mesh-network"},{"title":"Daily call quality logging and metrics","sidebarTitle":"Logging and metrics","href":"/docs/guides/architecture-and-monitoring/logging-and-metrics"},{"title":"Using the Daily Dashboard","sidebarTitle":"Dashboard overview","href":"/docs/guides/architecture-and-monitoring/experiment-in-the-dashboard"},{"title":"Daily Adaptive Bitrate","sidebarTitle":"Adaptive Bitrate","href":"/docs/guides/architecture-and-monitoring/adaptive-bitrate"}]},{"group":"Troubleshooting","pages":[{"title":"Debugging call issues","href":"/docs/guides/troubleshooting/debugging-call-issues"},{"title":"Debugging recordings and transcription","href":"/docs/guides/troubleshooting/debugging-recordings-and-transcription"},{"title":"Before contacting support","href":"/docs/guides/troubleshooting/before-contacting-support"}]},{"group":"Privacy and Security","pages":[{"title":"Working with Daily meeting tokens","sidebarTitle":"Meeting tokens","href":"/docs/guides/privacy-and-security/meeting-tokens"},{"title":"Self-signing meeting tokens","sidebarTitle":"Self-signing tokens","href":"/docs/guides/privacy-and-security/self-signing-tokens"},{"title":"Controlling who joins a meeting","sidebarTitle":"Controlling who joins","href":"/docs/guides/privacy-and-security/controlling-who-joins-a-meeting"},{"title":"HIPAA Compliance for healthcare","sidebarTitle":"HIPAA compliance","href":"/docs/guides/privacy-and-security/hipaa"},{"title":"Setting up your CSP for daily-js","sidebarTitle":"Content Security Policy","href":"/docs/guides/privacy-and-security/content-security-policy"},{"title":"Networking Guide","sidebarTitle":"Networking","href":"/docs/guides/privacy-and-security/corporate-firewalls-nats-allowed-ip-list"}]},{"group":"Scaling Calls","pages":[{"title":"Scaling Daily applications","sidebarTitle":"Overview","href":"/docs/guides/scaling-calls/index"},{"title":"Large real-time calls","href":"/docs/guides/scaling-calls/large-real-time-calls"},{"title":"Interactive live streaming and RTMP output","sidebarTitle":"Streaming and RTMP","href":"/docs/guides/scaling-calls/interactive-live-streaming-rtmp-output"},{"title":"Best practices to scale large experiences","sidebarTitle":"Best practices","href":"/docs/guides/scaling-calls/best-practices-to-scale-large-experiences"}]},{"group":"Features","pages":[{"group":"Recording","root":{"title":"Recording calls with the Daily API","sidebarTitle":"Overview","href":"/docs/guides/features/recording/index"},"pages":[{"title":"Storing Daily call recordings in a custom Amazon S3 bucket","sidebarTitle":"Custom S3 storage","href":"/docs/guides/features/recording/custom-s3-storage"},{"title":"Storing Daily call recordings in a custom OCI bucket","sidebarTitle":"Custom OCI storage","href":"/docs/guides/features/recording/custom-oci-storage"}]},{"group":"Live Streaming","root":{"title":"Live streaming with Daily","sidebarTitle":"RTMP live streaming","href":"/docs/guides/features/live-streaming/index"},"pages":[{"title":"Streaming HLS with Daily","sidebarTitle":"HLS streaming","href":"/docs/guides/features/live-streaming/hls"},{"title":"Multi-instance live streaming and recording","sidebarTitle":"Multi-instance","href":"/docs/guides/features/live-streaming/multi-instance"},{"title":"Custom layouts with VCS","sidebarTitle":"VCS layouts","href":"/docs/guides/features/live-streaming/vcs"}]},{"group":"Dial-in / Dial-out","root":{"title":"SIP and PSTN dial-in/dial-out","sidebarTitle":"Overview","href":"/docs/guides/features/dial-in-dial-out/index"},"pages":[{"title":"SIP dial-in and dial-out","sidebarTitle":"SIP","href":"/docs/guides/features/dial-in-dial-out/sip"},{"title":"PSTN dial-in with a PIN code","sidebarTitle":"PIN dial-in","description":"Let participants join a Daily room by dialing a phone number and entering a room-specific PIN code.","href":"/docs/guides/features/dial-in-dial-out/pstn-pin-dialin"},{"title":"SIP Interconnect and Pinless PSTN dial-in","sidebarTitle":"Pinless dial-in","href":"/docs/guides/features/dial-in-dial-out/sip-interconnect-pinless"},{"title":"SIP and PSTN call transfers","sidebarTitle":"Transfers","description":"Transfer SIP and PSTN calls between Daily rooms or to external destinations using SIP Call Transfer or SIP REFER.","href":"/docs/guides/features/dial-in-dial-out/transfers"},{"group":"SIP Trunk","root":{"title":"SIP Trunk (inbound)","sidebarTitle":"SIP Trunk","href":"/docs/guides/features/dial-in-dial-out/sip-trunk/index"},"pages":[{"title":"Twilio","sidebarTitle":"Twilio","href":"/docs/guides/features/dial-in-dial-out/sip-trunk/twilio"},{"title":"Telnyx","sidebarTitle":"Telnyx","href":"/docs/guides/features/dial-in-dial-out/sip-trunk/telnyx"},{"title":"Vonage","sidebarTitle":"Vonage","href":"/docs/guides/features/dial-in-dial-out/sip-trunk/vonage"}]},{"title":"SIP Clients","sidebarTitle":"SIP Clients","href":"/docs/guides/features/dial-in-dial-out/sip-clients"}]},{"title":"Transcription","href":"/docs/guides/features/transcription"},{"title":"Build audio-only experiences with Daily","sidebarTitle":"Audio-only","href":"/docs/guides/features/audio-only"}]}]},{"dropdown":"REST API","icon":"server","pages":[{"title":"REST API","sidebarTitle":"Overview","href":"/docs/rest-api"},{"title":"Authentication","href":"/docs/rest-api/authentication"},{"title":"Errors","href":"/docs/rest-api/errors"},{"title":"Access links","href":"/docs/rest-api/access-links"},{"title":"Transcription","href":"/docs/rest-api/transcription"}]},{"dropdown":"Daily JS","icon":"js","pages":[{"group":"Getting Started","pages":[{"title":"Introduction","href":"/docs/daily-js/introduction"},{"title":"Quickstart","href":"/docs/daily-js/quickstart"},{"title":"Installation","href":"/docs/daily-js/installation"}]},{"group":"Core Concepts","pages":[{"title":"Call Modes","href":"/docs/daily-js/concepts/call-modes"},{"title":"Call configuration","href":"/docs/daily-js/concepts/call-configuration"},{"title":"Events","href":"/docs/daily-js/concepts/events"},{"title":"Participants","href":"/docs/daily-js/concepts/participants"},{"title":"Tracks and Media","href":"/docs/daily-js/concepts/tracks"}]},{"group":"Guides","pages":[{"title":"Audio and Video Controls","href":"/docs/daily-js/guides/audio-video"},{"title":"Handling device permissions","href":"/docs/daily-js/guides/device-permissions"},{"title":"Waiting room (knock-to-join)","href":"/docs/daily-js/guides/waiting-room"},{"title":"Custom messages and shared data","href":"/docs/daily-js/guides/custom-messages"},{"title":"Permissions","href":"/docs/daily-js/guides/permissions"},{"title":"Network and call quality","href":"/docs/daily-js/guides/network-quality"},{"title":"Working with multiple call instances","href":"/docs/daily-js/guides/multi-instance"}]},{"group":"Features","pages":[{"title":"Screen Sharing","href":"/docs/daily-js/features/screen-sharing"},{"title":"Recording","href":"/docs/daily-js/features/recording"},{"title":"Live Streaming","href":"/docs/daily-js/features/live-streaming"},{"title":"Real-Time Transcription","href":"/docs/daily-js/features/transcription"},{"title":"Custom Tracks","href":"/docs/daily-js/features/custom-tracks"},{"title":"Dial-in and dial-out","href":"/docs/daily-js/features/dialin-dialout"}]}]},{"dropdown":"Daily React","icon":"react","pages":[{"group":"Getting Started","pages":[{"title":"Introduction","href":"/docs/daily-react/docs"},{"title":"Quickstart","href":"/docs/daily-react/docs/quickstart"},{"title":"Installation","href":"/docs/daily-react/docs/installation"}]},{"group":"Core Concepts","pages":[{"title":"Thinking in Daily React","href":"/docs/daily-react/docs/thinking-in-daily-react"},{"title":"The call object and provider","href":"/docs/daily-react/docs/call-object-and-provider"},{"title":"Working with participants","href":"/docs/daily-react/docs/participants"},{"title":"Handling events","href":"/docs/daily-react/docs/events"},{"title":"Rendering media","href":"/docs/daily-react/docs/rendering-media"}]},{"group":"Building Call Features","pages":[{"title":"Cameras, mics, and speakers","href":"/docs/daily-react/docs/devices"},{"title":"Active speaker and audio levels","href":"/docs/daily-react/docs/active-speaker"},{"title":"Screen sharing","href":"/docs/daily-react/docs/screen-sharing"},{"title":"Custom messages","href":"/docs/daily-react/docs/app-messages"},{"title":"Recording","href":"/docs/daily-react/docs/recording"},{"title":"Live streaming","href":"/docs/daily-react/docs/live-streaming"},{"title":"Real-Time Transcription","href":"/docs/daily-react/docs/transcription"},{"title":"Permissions","href":"/docs/daily-react/docs/permissions"},{"title":"Network quality and diagnostics","href":"/docs/daily-react/docs/network-quality"}]}]},{"dropdown":"React Native","icon":"mobile","pages":[{"title":"Introduction","href":"/docs/react-native"},{"title":"Installation","href":"/docs/react-native/installation"}]},{"dropdown":"Android","icon":"android","pages":[{"title":"Daily Client SDK for Android","sidebarTitle":"Overview","href":"/docs/android"},{"title":"Installing the Daily Client SDK for Android","sidebarTitle":"Installation","href":"/docs/android/installation"},{"title":"Daily Android Mobile SDK Kotlin Quickstart","sidebarTitle":"Quickstart","href":"/docs/android/quickstart"},{"title":"Daily Android Mobile SDK Screen Share Quickstart","sidebarTitle":"Screen Sharing","href":"/docs/android/screen-share"}]},{"dropdown":"iOS","icon":"apple","pages":[{"title":"Daily Client SDK for iOS","sidebarTitle":"Overview","href":"/docs/ios"},{"title":"Installing the Daily Client SDK for iOS","sidebarTitle":"Installation","href":"/docs/ios/installation"},{"title":"Daily iOS Mobile SDK Swift Quickstart","sidebarTitle":"Quickstart","href":"/docs/ios/quickstart"},{"title":"Daily iOS Mobile SDK Screen Share Quickstart","sidebarTitle":"Screen Sharing","href":"/docs/ios/screen-share"}]},{"dropdown":"Flutter","icon":"flutter","pages":[{"title":"Daily Client SDK for Flutter","sidebarTitle":"Overview","href":"/docs/flutter"},{"title":"Installing the Daily Client SDK for Flutter","sidebarTitle":"Installation","href":"/docs/flutter/installation"}]},{"dropdown":"Python","icon":"python","pages":[{"title":"Daily Python SDK","sidebarTitle":"Overview","href":"/docs/python"},{"title":"Installing the Daily Client SDK for Python","sidebarTitle":"Installation","href":"/docs/python/installation"},{"title":"Getting started with the Daily Python SDK","sidebarTitle":"Getting started","href":"/docs/python/getting-started"}]},{"dropdown":"Prebuilt","icon":"browser","pages":[{"title":"Embed video chat quickly with Daily Prebuilt","sidebarTitle":"Overview","href":"/docs/prebuilt"},{"title":"Customize Daily Prebuilt's UI","sidebarTitle":"Customizing","href":"/docs/prebuilt/customizing-daily-prebuilt"},{"title":"Customizing Daily Prebuilt calls with color themes","sidebarTitle":"Color themes","href":"/docs/prebuilt/customizing-daily-prebuilt-calls-with-color-themes"},{"title":"Changing the language in Daily Prebuilt","sidebarTitle":"Language settings","href":"/docs/prebuilt/language"}]},{"dropdown":"VCS","icon":"film","pages":[{"group":"Getting Started","pages":[{"title":"Using Daily's Video Component System (VCS) SDK","sidebarTitle":"Introduction","href":"/docs/vcs"},{"title":"Daily's Video Component System (VCS) installation guide","sidebarTitle":"Installation","href":"/docs/vcs/installation"},{"title":"VCS Layout API","href":"/docs/vcs/layout-api/index"}]},{"group":"Core Concepts","pages":[{"title":"VCS SDK: Core concepts","sidebarTitle":"Core concepts","href":"/docs/vcs/core-concepts/index"},{"title":"VCS best practices","sidebarTitle":"Best practices","href":"/docs/vcs/core-concepts/best-practices"},{"title":"VCS SDK: Composition file structure and interface","sidebarTitle":"Composition and interface","href":"/docs/vcs/core-concepts/composition"},{"title":"VCS SDK: Input and compositing models","sidebarTitle":"Input and compositing models","href":"/docs/vcs/core-concepts/input-and-compositing-models"}]},{"group":"Components","pages":[{"title":"VCS Components","sidebarTitle":"Overview","href":"/docs/vcs/components/index"},{"title":"VCS Box component","sidebarTitle":"Box","href":"/docs/vcs/components/box"},{"title":"VCS Image component","sidebarTitle":"Image","href":"/docs/vcs/components/image"},{"title":"VCS Text component","sidebarTitle":"Text","href":"/docs/vcs/components/text"},{"title":"VCS Video component","sidebarTitle":"Video","href":"/docs/vcs/components/video"},{"title":"VCS WebFrame component","sidebarTitle":"WebFrame","href":"/docs/vcs/components/webframe"}]},{"group":"Custom React Hooks","pages":[{"title":"VCS: Custom React Hooks","sidebarTitle":"Overview","href":"/docs/vcs/custom-react-hooks/index"},{"title":"VCS: useActiveVideo()","sidebarTitle":"useActiveVideo()","href":"/docs/vcs/custom-react-hooks/use-active-video"},{"title":"VCS: useGrid()","sidebarTitle":"useGrid()","href":"/docs/vcs/custom-react-hooks/use-grid"},{"title":"VCS: useMediaInput()","sidebarTitle":"useMediaInput()","href":"/docs/vcs/custom-react-hooks/use-media-input"},{"title":"VCS: useParams()","sidebarTitle":"useParams()","href":"/docs/vcs/custom-react-hooks/use-params"},{"title":"VCS: useVideoPlaybackState()","sidebarTitle":"useVideoPlaybackState()","href":"/docs/vcs/custom-react-hooks/use-video-playback-state"},{"title":"VCS: useVideoTime()","sidebarTitle":"useVideoTime()","href":"/docs/vcs/custom-react-hooks/use-video-time"},{"title":"VCS: useViewportSize()","sidebarTitle":"useViewportSize()","href":"/docs/vcs/custom-react-hooks/use-viewport-size"}]},{"title":"Using session assets in Daily VCS","sidebarTitle":"Session assets","href":"/docs/vcs/session-assets"},{"group":"Tools","pages":[{"title":"VCS tools","href":"/docs/vcs/tools/index"},{"title":"Build a JS package","href":"/docs/vcs/tools/build-a-js-package"},{"title":"VCS Simulator","href":"/docs/vcs/tools/simulator"},{"title":"VCS web renderer","href":"/docs/vcs/tools/vcs-web-renderer"}]}]}]},{"tab":"Reference","dropdowns":[{"dropdown":"REST API","icon":"server","pages":[{"group":"Domain","root":{"title":"Overview","href":"/reference/rest-api/domain"},"pages":[{"title":"Get Domain Config","openapi":"GET /","href":"/reference/rest-api/domain/get-domain-config"},{"title":"Set Domain Config","openapi":"POST /","href":"/reference/rest-api/domain/set-domain-config"}]},{"group":"Rooms","root":{"title":"Rooms","href":"/reference/rest-api/rooms/index"},"pages":[{"group":"Rooms","pages":[{"title":"List Rooms","openapi":"GET /rooms","href":"/reference/rest-api/rooms/list-rooms"},{"title":"Create Room","openapi":"POST /rooms","href":"/reference/rest-api/rooms/create-room"},{"title":"Get Room Config","openapi":"GET /rooms/{room_name}","href":"/reference/rest-api/rooms/get-room"},{"title":"Get Room Presence","openapi":"GET /rooms/{room_name}/presence","href":"/reference/rest-api/rooms/get-room-presence"},{"title":"Set Room Config","openapi":"POST /rooms/{room_name}","href":"/reference/rest-api/rooms/update-room"},{"title":"Delete Room","openapi":"DELETE /rooms/{room_name}","href":"/reference/rest-api/rooms/delete-room"}]},{"group":"Session","pages":[{"title":"Get Room Presence","openapi":"GET /rooms/{room_name}/presence","href":"/reference/rest-api/rooms/session/get-presence"},{"title":"Send App Message","openapi":"POST /rooms/{room_name}/send-app-message","href":"/reference/rest-api/rooms/session/send-app-message"},{"title":"Get Session Data","openapi":"GET /rooms/{room_name}/get-session-data","href":"/reference/rest-api/rooms/session/get-session-data"},{"title":"Set Session Data","openapi":"POST /rooms/{room_name}/set-session-data","href":"/reference/rest-api/rooms/session/set-session-data"},{"title":"Eject","openapi":"POST /rooms/{room_name}/eject","href":"/reference/rest-api/rooms/session/eject"},{"title":"Update Permissions","openapi":"POST /rooms/{room_name}/update-permissions","href":"/reference/rest-api/rooms/session/update-permissions"}]},{"group":"Recordings","pages":[{"title":"Room Recordings Start","openapi":"POST /rooms/{room_name}/recordings/start","href":"/reference/rest-api/rooms/recordings/start"},{"title":"Room Recordings Update","openapi":"POST /rooms/{room_name}/recordings/update","href":"/reference/rest-api/rooms/recordings/update"},{"title":"Room Recordings Stop","openapi":"POST /rooms/{room_name}/recordings/stop","href":"/reference/rest-api/rooms/recordings/stop"}]},{"group":"Live Streaming","pages":[{"title":"Room Livestreaming Start","openapi":"POST /rooms/{room_name}/live-streaming/start","href":"/reference/rest-api/rooms/live-streaming/start"},{"title":"Room Livestreaming Update","openapi":"POST /rooms/{room_name}/live-streaming/update","href":"/reference/rest-api/rooms/live-streaming/update"},{"title":"Room Livestreaming Add Endpoints","openapi":"POST /rooms/{room_name}/live-streaming/add-endpoints","href":"/reference/rest-api/rooms/live-streaming/add-endpoints"},{"title":"Room Livestreaming Remove Endpoints","openapi":"POST /rooms/{room_name}/live-streaming/remove-endpoints","href":"/reference/rest-api/rooms/live-streaming/remove-endpoints"},{"title":"Room Livestreaming Stop","openapi":"POST /rooms/{room_name}/live-streaming/stop","href":"/reference/rest-api/rooms/live-streaming/stop"}]},{"group":"Transcription","pages":[{"title":"Room Transcription Start","openapi":"POST /rooms/{room_name}/transcription/start","href":"/reference/rest-api/rooms/transcription/start"},{"title":"Room Transcription Update","openapi":"POST /rooms/{room_name}/transcription/update","href":"/reference/rest-api/rooms/transcription/update"},{"title":"Room Transcription Stop","openapi":"POST /rooms/{room_name}/transcription/stop","href":"/reference/rest-api/rooms/transcription/stop"}]},{"group":"Dial Out","pages":[{"title":"Room Dial Out Start","openapi":"POST /rooms/{room_name}/dialOut/start","href":"/reference/rest-api/rooms/dial-out/start"},{"title":"Room Dial Out Send DTMF","openapi":"POST /rooms/{room_name}/dialOut/sendDTMF","href":"/reference/rest-api/rooms/dial-out/send-dtmf"},{"title":"Room Dial Out Stop","openapi":"POST /rooms/{room_name}/dialOut/stop","href":"/reference/rest-api/rooms/dial-out/stop"}]},{"group":"SIP / Call Transfer","pages":[{"title":"Room SIP Call Transfer","openapi":"POST /rooms/{room_name}/sipCallTransfer","href":"/reference/rest-api/rooms/call-transfer/sip-call-transfer"},{"title":"Room SIP Refer","openapi":"POST /rooms/{room_name}/sipRefer","href":"/reference/rest-api/rooms/call-transfer/sip-refer"}]},{"group":"Batch Rooms","pages":[{"title":"Batch Room Create","openapi":"POST /batch/rooms","href":"/reference/rest-api/batch/create-rooms"},{"title":"Batch Room Delete","openapi":"DELETE /batch/rooms","href":"/reference/rest-api/batch/delete-rooms"}]}]},{"group":"Meeting Tokens","root":{"title":"Meeting tokens - Overview","href":"/reference/rest-api/meeting-tokens/index"},"pages":[{"title":"Create Meeting Token","openapi":"POST /meeting-tokens","href":"/reference/rest-api/meeting-tokens/create-meeting-token"},{"title":"Validate Meeting Token","openapi":"GET /meeting-tokens/{meeting_token}","href":"/reference/rest-api/meeting-tokens/validate-meeting-token"}]},{"group":"Recordings","root":{"title":"Recordings - overview","href":"/reference/rest-api/recordings/index"},"pages":[{"title":"List Recordings","openapi":"GET /recordings","href":"/reference/rest-api/recordings/list-recordings"},{"title":"Get Recording Info","openapi":"GET /recordings/{recording_id}","href":"/reference/rest-api/recordings/get-recording"},{"title":"Delete Recording","openapi":"DELETE /recordings/{recording_id}","href":"/reference/rest-api/recordings/delete-recording"},{"title":"Get Recording Link","openapi":"GET /recordings/{recording_id}/access-link","href":"/reference/rest-api/recordings/get-recording-link"},{"title":"Test OCI Bucket","openapi":"GET /recordings/test-oci-bucket","href":"/reference/rest-api/recordings/test-oci-bucket"}]},{"group":"Transcripts","root":{"title":"Transcripts - overview","href":"/reference/rest-api/transcripts/index"},"pages":[{"title":"List Transcript","openapi":"GET /transcript","href":"/reference/rest-api/transcripts/list-transcripts"},{"title":"Get Transcript Info","openapi":"GET /transcript/{transcriptId}","href":"/reference/rest-api/transcripts/get-transcript"},{"title":"Delete Transcript","openapi":"DELETE /transcript/{transcriptId}","href":"/reference/rest-api/transcripts/delete-transcript"},{"title":"Get Transcript Link","openapi":"GET /transcript/{transcriptId}/access-link","href":"/reference/rest-api/transcripts/get-transcript-link"}]},{"group":"Logs","root":{"title":"Logs - overview","href":"/reference/rest-api/logs/index"},"pages":[{"title":"List Logs","openapi":"GET /logs","href":"/reference/rest-api/logs/list-logs"},{"title":"List API Logs","openapi":"GET /logs/api","href":"/reference/rest-api/logs/list-api-logs"}]},{"group":"Meetings","root":{"title":"Meetings","href":"/reference/rest-api/meetings/index"},"pages":[{"title":"Get Meeting Info","openapi":"GET /meetings","href":"/reference/rest-api/meetings/list-meetings"},{"title":"Get Individual Meeting Info","openapi":"GET /meetings/{meeting}","href":"/reference/rest-api/meetings/get-meeting"},{"title":"Get Meeting Participants","openapi":"GET /meetings/{meeting}/participants","href":"/reference/rest-api/meetings/get-participants"}]},{"group":"Presence","root":{"title":"Presence - overview","href":"/reference/rest-api/presence/index"},"pages":[{"title":"Get Presence","openapi":"GET /presence","href":"/reference/rest-api/presence/get-presence"}]},{"group":"Phone Numbers","root":{"title":"phone-numbers","href":"/reference/rest-api/phone-numbers/index"},"pages":[{"title":"List Available Numbers","openapi":"GET /list-available-numbers","href":"/reference/rest-api/phone-numbers/list-available"},{"title":"Purchased Phone Numbers","openapi":"GET /purchased-phone-numbers","href":"/reference/rest-api/phone-numbers/list-purchased"},{"title":"Buy Phone Number","openapi":"POST /buy-phone-number","href":"/reference/rest-api/phone-numbers/buy-number"},{"title":"Release Phone Number","openapi":"DELETE /release-phone-number/{id}","href":"/reference/rest-api/phone-numbers/release-number"}]},{"group":"Dial-In","root":{"title":"Dial-In","href":"/reference/rest-api/dial-in/index"},"pages":[{"title":"Pinless Call Update","openapi":"POST /dialin/pinlessCallUpdate","href":"/reference/rest-api/dial-in/pinless-update"}]},{"group":"Domain Dial-In Config","root":{"title":"Pinless_dialin and pin_dialin - overview","href":"/reference/rest-api/domainDialinConfig/index"},"pages":[{"title":"List Domain Dialin Configs","openapi":"GET /domain-dialin-config","href":"/reference/rest-api/dial-in/list-configs"},{"title":"Create Domain Dial Config Info","openapi":"POST /domain-dialin-config","href":"/reference/rest-api/dial-in/create-config"},{"title":"Get Domain Dialin Config Info","openapi":"GET /domain-dialin-config/{id}","href":"/reference/rest-api/dial-in/get-config"},{"title":"Update Domain Dial Config Info","openapi":"PUT /domain-dialin-config/{id}","href":"/reference/rest-api/dial-in/update-config"},{"title":"Delete Domain Dialin Config","openapi":"DELETE /domain-dialin-config/{id}","href":"/reference/rest-api/dial-in/delete-config"}]},{"group":"SIP Trunk","root":{"title":"SIP Trunk","href":"/reference/rest-api/sip-trunk/index"},"pages":[{"title":"Create a SIP trunk","openapi":"POST /sip-trunk","href":"/reference/rest-api/sip-trunk/create"},{"title":"List SIP trunks","openapi":"GET /sip-trunk","href":"/reference/rest-api/sip-trunk/list"},{"title":"Get a SIP trunk","openapi":"GET /sip-trunk/{id}","href":"/reference/rest-api/sip-trunk/get"},{"title":"Update a SIP trunk","openapi":"PUT /sip-trunk/{id}","href":"/reference/rest-api/sip-trunk/update"},{"title":"Delete a SIP trunk","openapi":"DELETE /sip-trunk/{id}","href":"/reference/rest-api/sip-trunk/delete"},{"title":"sip_trunk.incoming notification","href":"/reference/rest-api/sip-trunk/notification"}]},{"group":"SIP Clients","root":{"title":"SIP Clients","href":"/reference/rest-api/sip-clients/index"},"pages":[{"title":"Create a SIP client","openapi":"POST /sip-clients","href":"/reference/rest-api/sip-clients/create"},{"title":"List SIP clients","openapi":"GET /sip-clients","href":"/reference/rest-api/sip-clients/list"},{"title":"Get a SIP client","openapi":"GET /sip-clients/{username}","href":"/reference/rest-api/sip-clients/get"},{"title":"Delete a SIP client","openapi":"DELETE /sip-clients/{username}","href":"/reference/rest-api/sip-clients/delete"},{"title":"Rotate a SIP client's password","openapi":"POST /sip-clients/{username}/rotate","href":"/reference/rest-api/sip-clients/rotate"}]},{"group":"Webhooks","root":{"title":"Webhooks","href":"/reference/rest-api/webhooks/index"},"pages":[{"title":"Get Webhooks","openapi":"GET /webhooks","href":"/reference/rest-api/webhooks/list-webhooks"},{"title":"Create Webhook","openapi":"POST /webhooks","href":"/reference/rest-api/webhooks/create-webhook"},{"title":"Get Webhook Config","openapi":"GET /webhooks/{id}","href":"/reference/rest-api/webhooks/get-webhook"},{"title":"Update Webhook Config","openapi":"POST /webhooks/{id}","href":"/reference/rest-api/webhooks/update-webhook"},{"title":"Delete Webhook","openapi":"DELETE /webhooks/{id}","href":"/reference/rest-api/webhooks/delete-webhook"},{"group":"Events","root":{"title":"Webhook Events","href":"/reference/rest-api/webhooks/events/index"},"pages":[{"title":"Batch Processor Job Error","href":"/reference/rest-api/webhooks/events/batch-processor-error"},{"title":"Batch Processor Job Finished","href":"/reference/rest-api/webhooks/events/batch-processor-job-finished"},{"title":"Calltransfer Answered","href":"/reference/rest-api/webhooks/events/calltransfer-answered"},{"title":"Calltransfer Completed","href":"/reference/rest-api/webhooks/events/calltransfer-completed"},{"title":"Calltransfer Initiated","href":"/reference/rest-api/webhooks/events/calltransfer-initiated"},{"title":"Calltransfer Triggered","href":"/reference/rest-api/webhooks/events/calltransfer-triggered"},{"title":"Dial-in Connected","href":"/reference/rest-api/webhooks/events/dialin-connected"},{"title":"Dial-in error","href":"/reference/rest-api/webhooks/events/dialin-error"},{"title":"Dial-in Ready","href":"/reference/rest-api/webhooks/events/dialin-ready"},{"title":"Dial-in stopped","href":"/reference/rest-api/webhooks/events/dialin-stopped"},{"title":"Dial-in warning","href":"/reference/rest-api/webhooks/events/dialin-warning"},{"title":"Dial-out Answered","href":"/reference/rest-api/webhooks/events/dialout-answered"},{"title":"Dial-out Connected","href":"/reference/rest-api/webhooks/events/dialout-connected"},{"title":"Dial-out error","href":"/reference/rest-api/webhooks/events/dialout-error"},{"title":"Dial-out stopped","href":"/reference/rest-api/webhooks/events/dialout-stopped"},{"title":"Dial-out warning","href":"/reference/rest-api/webhooks/events/dialout-warning"},{"title":"Meeting Ended","href":"/reference/rest-api/webhooks/events/meeting-ended"},{"title":"Meeting Started","href":"/reference/rest-api/webhooks/events/meeting-started"},{"title":"Participant Joined","href":"/reference/rest-api/webhooks/events/participant-joined"},{"title":"Participant Left","href":"/reference/rest-api/webhooks/events/participant-left"},{"title":"Recording Error","href":"/reference/rest-api/webhooks/events/recording-error"},{"title":"Recording Ready to Download","href":"/reference/rest-api/webhooks/events/recording-ready-to-download"},{"title":"Recording Started","href":"/reference/rest-api/webhooks/events/recording-started"},{"title":"Streaming Ended","href":"/reference/rest-api/webhooks/events/streaming-ended"},{"title":"Streaming Error","href":"/reference/rest-api/webhooks/events/streaming-error"},{"title":"Streaming Started","href":"/reference/rest-api/webhooks/events/streaming-started"},{"title":"Streaming Updated","href":"/reference/rest-api/webhooks/events/streaming-updated"},{"title":"Streaming Warning","href":"/reference/rest-api/webhooks/events/streaming-warning"},{"title":"Transcript Error","href":"/reference/rest-api/webhooks/events/transcript-error"},{"title":"Transcript Ready to Download","href":"/reference/rest-api/webhooks/events/transcript-ready-to-download"},{"title":"Transcript Started","href":"/reference/rest-api/webhooks/events/transcript-started"},{"title":"Waiting Participant Joined","href":"/reference/rest-api/webhooks/events/waiting-participant-joined"},{"title":"Waiting Participant Left","href":"/reference/rest-api/webhooks/events/waiting-participant-left"}]}]},{"group":"Batch Processor","root":{"title":"Batch Processor API","href":"/reference/rest-api/batch-processor/index"},"pages":[{"title":"Submit job","href":"/reference/rest-api/batch-processor/reference/submit-job"},{"title":"List jobs","href":"/reference/rest-api/batch-processor/reference/list-jobs"},{"title":"Get job","href":"/reference/rest-api/batch-processor/reference/get-job"},{"title":"Access-Link","href":"/reference/rest-api/batch-processor/reference/get-job-access-link"},{"title":"Delete job","href":"/reference/rest-api/batch-processor/reference/delete-job"}]}]},{"dropdown":"Daily JS","icon":"js","pages":[{"group":"Daily Call Client","pages":[{"title":"Daily Call Client","href":"/reference/daily-js/daily-call-client"}]},{"group":"Types","pages":[{"title":"Types","href":"/reference/daily-js/types/index"},{"title":"DailyCallOptions","href":"/reference/daily-js/types/daily-call-options"},{"title":"DailyParticipant","href":"/reference/daily-js/types/daily-participant"},{"title":"DailyTrackState","href":"/reference/daily-js/types/daily-track-state"},{"title":"DailyParticipantPermissions","href":"/reference/daily-js/types/daily-participant-permissions"},{"title":"DailyStreamingOptions","href":"/reference/daily-js/types/daily-streaming-options"},{"title":"DailyStreamingLayoutConfig","href":"/reference/daily-js/types/daily-streaming-layout-config"}]},{"group":"Factory Methods","pages":[{"title":"Factory methods","href":"/reference/daily-js/factory-methods/index"},{"title":"Daily.createCallObject()","href":"/reference/daily-js/factory-methods/create-call-object"},{"title":"Daily.createFrame()","href":"/reference/daily-js/factory-methods/create-frame"},{"title":"Daily.createTransparentFrame()","href":"/reference/daily-js/factory-methods/create-transparent-frame"},{"title":"Daily.wrap()","href":"/reference/daily-js/factory-methods/wrap"}]},{"group":"Static Methods","pages":[{"title":"Static methods","href":"/reference/daily-js/static-methods/index"},{"title":"Daily.getCallInstance()","href":"/reference/daily-js/static-methods/get-call-instance"},{"title":"supportedBrowser()","href":"/reference/daily-js/static-methods/supported-browser"}]},{"group":"Instance Methods","pages":[{"title":"Instance methods","href":"/reference/daily-js/instance-methods/index"},{"title":"abortTestNetworkConnectivity()","href":"/reference/daily-js/instance-methods/abort-test-network-connectivity"},{"title":"abortTestWebsocketConnectivity()","href":"/reference/daily-js/instance-methods/abort-test-websocket-connectivity"},{"title":"accessState()","href":"/reference/daily-js/instance-methods/access-state"},{"title":"activeSpeakerMode()","href":"/reference/daily-js/instance-methods/active-speaker-mode"},{"title":"addFakeParticipant()","href":"/reference/daily-js/instance-methods/add-fake-participant"},{"title":"addLiveStreamingEndpoints()","href":"/reference/daily-js/instance-methods/add-live-streaming-endpoints"},{"title":"customIntegrations()","href":"/reference/daily-js/instance-methods/custom-integrations"},{"title":"customTrayButtons()","href":"/reference/daily-js/instance-methods/custom-tray-buttons"},{"title":"cycleCamera()","href":"/reference/daily-js/instance-methods/cycle-camera"},{"title":"cycleMic()","href":"/reference/daily-js/instance-methods/cycle-mic"},{"title":"destroy()","href":"/reference/daily-js/instance-methods/destroy"},{"title":"enumerateDevices()","href":"/reference/daily-js/instance-methods/enumerate-devices"},{"title":"exitFullscreen()","href":"/reference/daily-js/instance-methods/exit-fullscreen"},{"title":"getCpuLoadStats()","href":"/reference/daily-js/instance-methods/get-cpu-load-stats"},{"title":"getDailyLang()","href":"/reference/daily-js/instance-methods/get-daily-lang"},{"title":"getInputDevices()","href":"/reference/daily-js/instance-methods/get-input-devices"},{"title":"getInputSettings()","href":"/reference/daily-js/instance-methods/get-input-settings"},{"title":"getLocalAudioLevel()","href":"/reference/daily-js/instance-methods/get-local-audio-level"},{"title":"getMeetingSession() (Deprecated)","href":"/reference/daily-js/instance-methods/get-meeting-session"},{"title":"getNetworkStats()","href":"/reference/daily-js/instance-methods/get-network-stats"},{"title":"getNetworkTopology()","href":"/reference/daily-js/instance-methods/get-network-topology"},{"title":"getReceiveSettings()","href":"/reference/daily-js/instance-methods/get-receive-settings"},{"title":"getRemoteParticipantsAudioLevel()","href":"/reference/daily-js/instance-methods/get-remote-participants-audio-level"},{"title":"getSendSettings()","href":"/reference/daily-js/instance-methods/get-send-settings"},{"title":"getSidebarView()","href":"/reference/daily-js/instance-methods/get-sidebar-view"},{"title":"iframe()","href":"/reference/daily-js/instance-methods/iframe"},{"title":"isDestroyed()","href":"/reference/daily-js/instance-methods/is-destroyed"},{"title":"isLocalAudioLevelObserverRunning()","href":"/reference/daily-js/instance-methods/is-local-audio-level-observer-running"},{"title":"isRemoteParticipantsAudioLevelObserverRunning()","href":"/reference/daily-js/instance-methods/is-remote-participants-audio-level-observer-running"},{"title":"join()","href":"/reference/daily-js/instance-methods/join"},{"title":"leave()","href":"/reference/daily-js/instance-methods/leave"},{"title":"load()","href":"/reference/daily-js/instance-methods/load"},{"title":"localAudio()","href":"/reference/daily-js/instance-methods/local-audio"},{"title":"localScreenAudio()","href":"/reference/daily-js/instance-methods/local-screen-audio"},{"title":"localScreenVideo()","href":"/reference/daily-js/instance-methods/local-screen-video"},{"title":"localVideo()","href":"/reference/daily-js/instance-methods/local-video"},{"title":"meetingSessionState()","href":"/reference/daily-js/instance-methods/meeting-session-state"},{"title":"meetingSessionSummary()","href":"/reference/daily-js/instance-methods/meeting-session-summary"},{"title":"meetingState()","href":"/reference/daily-js/instance-methods/meeting-state"},{"title":"off()","href":"/reference/daily-js/instance-methods/off"},{"title":"on()","href":"/reference/daily-js/instance-methods/on"},{"title":"once()","href":"/reference/daily-js/instance-methods/once"},{"title":"participantCounts()","href":"/reference/daily-js/instance-methods/participant-counts"},{"title":"participants()","href":"/reference/daily-js/instance-methods/participants"},{"title":"preAuth()","href":"/reference/daily-js/instance-methods/pre-auth"},{"title":"removeLiveStreamingEndpoints()","href":"/reference/daily-js/instance-methods/remove-live-streaming-endpoints"},{"title":"requestAccess()","href":"/reference/daily-js/instance-methods/request-access"},{"title":"requestFullscreen()","href":"/reference/daily-js/instance-methods/request-fullscreen"},{"title":"room()","href":"/reference/daily-js/instance-methods/room"},{"title":"sendAppMessage()","href":"/reference/daily-js/instance-methods/send-app-message"},{"title":"sendDTMF()","href":"/reference/daily-js/instance-methods/send-dtmf"},{"title":"setActiveSpeakerMode()","href":"/reference/daily-js/instance-methods/set-active-speaker-mode"},{"title":"setBandwidth()","href":"/reference/daily-js/instance-methods/set-bandwidth"},{"title":"setCustomIntegrations()","href":"/reference/daily-js/instance-methods/set-custom-integrations"},{"title":"setDailyLang()","href":"/reference/daily-js/instance-methods/set-daily-lang"},{"title":"setIceConfig()","href":"/reference/daily-js/instance-methods/set-ice-config"},{"title":"setInputDevicesAsync()","href":"/reference/daily-js/instance-methods/set-input-devices-async"},{"title":"setLocalAudio()","href":"/reference/daily-js/instance-methods/set-local-audio"},{"title":"setLocalVideo()","href":"/reference/daily-js/instance-methods/set-local-video"},{"title":"setMeetingSessionData()","href":"/reference/daily-js/instance-methods/set-meeting-session-data"},{"title":"setNetworkTopology()","href":"/reference/daily-js/instance-methods/set-network-topology"},{"title":"setOutputDeviceAsync()","href":"/reference/daily-js/instance-methods/set-output-device-async"},{"title":"setPlayNewParticipantSound()","href":"/reference/daily-js/instance-methods/set-play-new-participant-sound"},{"title":"setProxyUrl()","href":"/reference/daily-js/instance-methods/set-proxy-url"},{"title":"setShowLocalVideo()","href":"/reference/daily-js/instance-methods/set-show-local-video"},{"title":"setShowNamesMode()","href":"/reference/daily-js/instance-methods/set-show-names-mode"},{"title":"setShowParticipantsBar()","href":"/reference/daily-js/instance-methods/set-show-participants-bar"},{"title":"setSidebarView()","href":"/reference/daily-js/instance-methods/set-sidebar-view"},{"title":"setSubscribeToTracksAutomatically()","href":"/reference/daily-js/instance-methods/set-subscribe-to-tracks-automatically"},{"title":"setTheme()","href":"/reference/daily-js/instance-methods/set-theme"},{"title":"setUserData()","href":"/reference/daily-js/instance-methods/set-user-data"},{"title":"setUserName()","href":"/reference/daily-js/instance-methods/set-user-name"},{"title":"showLocalVideo()","href":"/reference/daily-js/instance-methods/show-local-video"},{"title":"showParticipantsBar()","href":"/reference/daily-js/instance-methods/show-participants-bar"},{"title":"sipCallTransfer()","href":"/reference/daily-js/instance-methods/sip-call-transfer"},{"title":"sipRefer()","href":"/reference/daily-js/instance-methods/sip-refer"},{"title":"startCamera()","href":"/reference/daily-js/instance-methods/start-camera"},{"title":"startCustomIntegrations()","href":"/reference/daily-js/instance-methods/start-custom-integrations"},{"title":"startCustomTrack()","href":"/reference/daily-js/instance-methods/start-custom-track"},{"title":"startDialOut()","href":"/reference/daily-js/instance-methods/start-dial-out"},{"title":"startLiveStreaming()","href":"/reference/daily-js/instance-methods/start-live-streaming"},{"title":"startLocalAudioLevelObserver()","href":"/reference/daily-js/instance-methods/start-local-audio-level-observer"},{"title":"startRecording()","href":"/reference/daily-js/instance-methods/start-recording"},{"title":"startRemoteParticipantsAudioLevelObserver()","href":"/reference/daily-js/instance-methods/start-remote-participants-audio-level-observer"},{"title":"startScreenShare()","href":"/reference/daily-js/instance-methods/start-screen-share"},{"title":"startTranscription()","href":"/reference/daily-js/instance-methods/start-transcription"},{"title":"stopCustomIntegrations()","href":"/reference/daily-js/instance-methods/stop-custom-integrations"},{"title":"stopCustomTrack()","href":"/reference/daily-js/instance-methods/stop-custom-track"},{"title":"stopDialOut()","href":"/reference/daily-js/instance-methods/stop-dial-out"},{"title":"stopLiveStreaming()","href":"/reference/daily-js/instance-methods/stop-live-streaming"},{"title":"stopLocalAudioLevelObserver()","href":"/reference/daily-js/instance-methods/stop-local-audio-level-observer"},{"title":"stopRecording()","href":"/reference/daily-js/instance-methods/stop-recording"},{"title":"stopRemoteParticipantsAudioLevelObserver()","href":"/reference/daily-js/instance-methods/stop-remote-participants-audio-level-observer"},{"title":"stopScreenShare()","href":"/reference/daily-js/instance-methods/stop-screen-share"},{"title":"stopTestCallQuality()","href":"/reference/daily-js/instance-methods/stop-test-call-quality"},{"title":"stopTestConnectionQuality()","href":"/reference/daily-js/instance-methods/stop-test-connection-quality"},{"title":"stopTestPeerToPeerCallQuality()","href":"/reference/daily-js/instance-methods/stop-test-peer-to-peer-call-quality"},{"title":"stopTranscription()","href":"/reference/daily-js/instance-methods/stop-transcription"},{"title":"testCallQuality()","href":"/reference/daily-js/instance-methods/test-call-quality"},{"title":"testConnectionQuality()","href":"/reference/daily-js/instance-methods/test-connection-quality"},{"title":"testNetworkConnectivity()","href":"/reference/daily-js/instance-methods/test-network-connectivity"},{"title":"testPeerToPeerCallQuality()","href":"/reference/daily-js/instance-methods/test-peer-to-peer-call-quality"},{"title":"testWebsocketConnectivity()","href":"/reference/daily-js/instance-methods/test-websocket-connectivity"},{"title":"theme()","href":"/reference/daily-js/instance-methods/theme"},{"title":"updateCustomTrayButtons()","href":"/reference/daily-js/instance-methods/update-custom-tray-buttons"},{"title":"updateInputSettings()","href":"/reference/daily-js/instance-methods/update-input-settings"},{"title":"updateLiveStreaming()","href":"/reference/daily-js/instance-methods/update-live-streaming"},{"title":"updateParticipant()","href":"/reference/daily-js/instance-methods/update-participant"},{"title":"updateParticipants()","href":"/reference/daily-js/instance-methods/update-participants"},{"title":"updateReceiveSettings()","href":"/reference/daily-js/instance-methods/update-receive-settings"},{"title":"updateRecording()","href":"/reference/daily-js/instance-methods/update-recording"},{"title":"updateScreenShare()","href":"/reference/daily-js/instance-methods/update-screen-share"},{"title":"updateSendSettings()","href":"/reference/daily-js/instance-methods/update-send-settings"},{"title":"updateTranscription()","href":"/reference/daily-js/instance-methods/update-transcription"},{"title":"updateWaitingParticipant()","href":"/reference/daily-js/instance-methods/update-waiting-participant"},{"title":"updateWaitingParticipants()","href":"/reference/daily-js/instance-methods/update-waiting-participants"},{"title":"waitingParticipants()","href":"/reference/daily-js/instance-methods/waiting-participants"}]},{"group":"Events","pages":[{"title":"daily-js events","href":"/reference/daily-js/events/index"},{"title":"Lifecycle events","href":"/reference/daily-js/events/lifecycle-events"},{"title":"Participant events","href":"/reference/daily-js/events/participant-events"},{"title":"Media events","href":"/reference/daily-js/events/media-events"},{"title":"Network events","href":"/reference/daily-js/events/network-events"},{"title":"Settings \u0026 device events","href":"/reference/daily-js/events/settings-events"},{"title":"Messaging events","href":"/reference/daily-js/events/messaging-events"},{"title":"Recording events","href":"/reference/daily-js/events/recording-events"},{"title":"Live streaming events","href":"/reference/daily-js/events/live-streaming-events"},{"title":"Transcription events","href":"/reference/daily-js/events/transcription-events"},{"title":"Telephony events (SIP/PSTN)","href":"/reference/daily-js/events/telephony-events"},{"title":"Error events","href":"/reference/daily-js/events/error-events"},{"title":"Iframe UI events","href":"/reference/daily-js/events/iframe-ui-events"}]}]},{"dropdown":"Daily React","icon":"react","pages":[{"group":"Components","pages":[{"title":"Daily Provider","href":"/reference/daily-react/daily-provider"},{"title":"Daily Audio","href":"/reference/daily-react/daily-audio"},{"title":"Daily Audio Track","href":"/reference/daily-react/daily-audio-track"},{"title":"Daily Video","href":"/reference/daily-react/daily-video"}]},{"group":"Hooks","pages":[{"title":"useActiveParticipant","href":"/reference/daily-react/use-active-participant"},{"title":"useActiveSpeakerId","href":"/reference/daily-react/use-active-speaker-id"},{"title":"useAppMessage","href":"/reference/daily-react/use-app-message"},{"title":"useAudioLevel","href":"/reference/daily-react/use-audio-level"},{"title":"useAudioLevelObserver","href":"/reference/daily-react/use-audio-level-observer"},{"title":"useCPULoad","href":"/reference/daily-react/use-cpu-load"},{"title":"useCallFrame","href":"/reference/daily-react/use-call-frame"},{"title":"useCallObject","href":"/reference/daily-react/use-call-object"},{"title":"useDaily","href":"/reference/daily-react/use-daily"},{"title":"useDailyError","href":"/reference/daily-react/use-daily-error"},{"title":"useDailyEvent","href":"/reference/daily-react/use-daily-event"},{"title":"useDevices","href":"/reference/daily-react/use-devices"},{"title":"useDialin","href":"/reference/daily-react/use-dialin"},{"title":"useDialOut","href":"/reference/daily-react/use-dialout"},{"title":"useInputSettings","href":"/reference/daily-react/use-input-settings"},{"title":"useLiveStreaming","href":"/reference/daily-react/use-live-streaming"},{"title":"useLiveStreamingInstances","href":"/reference/daily-react/use-live-streaming-instances"},{"title":"useLocalParticipant","href":"/reference/daily-react/use-local-participant"},{"title":"useLocalSessionId","href":"/reference/daily-react/use-local-session-id"},{"title":"useMediaTrack","href":"/reference/daily-react/use-media-track"},{"title":"useMeetingSessionState","href":"/reference/daily-react/use-meeting-session-state"},{"title":"useMeetingSessionSummary","href":"/reference/daily-react/use-meeting-session-summary"},{"title":"useMeetingState","href":"/reference/daily-react/use-meeting-state"},{"title":"useNetwork","href":"/reference/daily-react/use-network"},{"title":"useParticipant","href":"/reference/daily-react/use-participant"},{"title":"useParticipantCounts","href":"/reference/daily-react/use-participant-counts"},{"title":"useParticipantIds","href":"/reference/daily-react/use-participant-ids"},{"title":"useParticipantProperty","href":"/reference/daily-react/use-participant-property"},{"title":"usePermissions","href":"/reference/daily-react/use-permissions"},{"title":"useReceiveSettings","href":"/reference/daily-react/use-receive-settings"},{"title":"useRecording","href":"/reference/daily-react/use-recording"},{"title":"useRecordingInstances","href":"/reference/daily-react/use-recording-instances"},{"title":"useRoom","href":"/reference/daily-react/use-room"},{"title":"useRoomExp","href":"/reference/daily-react/use-room-exp"},{"title":"useScreenShare","href":"/reference/daily-react/use-screen-share"},{"title":"useSendSettings","href":"/reference/daily-react/use-send-settings"},{"title":"useThrottledDailyEvent","href":"/reference/daily-react/use-throttled-daily-event"},{"title":"useTranscription","href":"/reference/daily-react/use-transcription"},{"title":"useWaitingParticipants","href":"/reference/daily-react/use-waiting-participants"}]}]},{"dropdown":"React Native","icon":"mobile","pages":[{"group":"Daily Call Client","pages":[{"title":"Daily Call Client","href":"/reference/react-native/daily-call-client"},{"title":"Daily.createCallObject()","href":"/reference/react-native/daily-call-client/create-call-object"}]},{"group":"Types","pages":[{"title":"Types","href":"/reference/react-native/types/index"},{"title":"DailyCallOptions","href":"/reference/react-native/types/daily-call-options"},{"title":"DailyParticipant","href":"/reference/react-native/types/daily-participant"},{"title":"DailyParticipantPermissions","href":"/reference/react-native/types/daily-participant-permissions"},{"title":"DailyStreamingLayoutConfig","href":"/reference/react-native/types/daily-streaming-layout-config"},{"title":"DailyStreamingOptions","href":"/reference/react-native/types/daily-streaming-options"},{"title":"DailyTrackState","href":"/reference/react-native/types/daily-track-state"}]},{"group":"Static Methods","pages":[{"title":"Static methods","href":"/reference/react-native/static-methods/index"},{"title":"Daily.getCallInstance()","href":"/reference/react-native/static-methods/get-call-instance"},{"title":"supportedBrowser()","href":"/reference/react-native/static-methods/supported-browser"}]},{"group":"Instance Methods","pages":[{"title":"Instance methods","href":"/reference/react-native/instance-methods/index"},{"title":"abortTestNetworkConnectivity()","href":"/reference/react-native/instance-methods/abort-test-network-connectivity"},{"title":"abortTestWebsocketConnectivity()","href":"/reference/react-native/instance-methods/abort-test-websocket-connectivity"},{"title":"accessState()","href":"/reference/react-native/instance-methods/access-state"},{"title":"addLiveStreamingEndpoints()","href":"/reference/react-native/instance-methods/add-live-streaming-endpoints"},{"title":"cycleCamera()","href":"/reference/react-native/instance-methods/cycle-camera"},{"title":"destroy()","href":"/reference/react-native/instance-methods/destroy"},{"title":"enumerateDevices()","href":"/reference/react-native/instance-methods/enumerate-devices"},{"title":"getCameraFacingMode()","href":"/reference/react-native/instance-methods/get-camera-facing-mode"},{"title":"getCpuLoadStats()","href":"/reference/react-native/instance-methods/get-cpu-load-stats"},{"title":"getInputDevices()","href":"/reference/react-native/instance-methods/get-input-devices"},{"title":"getLocalAudioLevel()","href":"/reference/react-native/instance-methods/get-local-audio-level"},{"title":"getNetworkStats()","href":"/reference/react-native/instance-methods/get-network-stats"},{"title":"getReceiveSettings()","href":"/reference/react-native/instance-methods/get-receive-settings"},{"title":"getRemoteParticipantsAudioLevel()","href":"/reference/react-native/instance-methods/get-remote-participants-audio-level"},{"title":"getSendSettings()","href":"/reference/react-native/instance-methods/get-send-settings"},{"title":"isDestroyed()","href":"/reference/react-native/instance-methods/is-destroyed"},{"title":"isLocalAudioLevelObserverRunning()","href":"/reference/react-native/instance-methods/is-local-audio-level-observer-running"},{"title":"isRemoteParticipantsAudioLevelObserverRunning()","href":"/reference/react-native/instance-methods/is-remote-participants-audio-level-observer-running"},{"title":"join()","href":"/reference/react-native/instance-methods/join"},{"title":"leave()","href":"/reference/react-native/instance-methods/leave"},{"title":"load()","href":"/reference/react-native/instance-methods/load"},{"title":"localAudio()","href":"/reference/react-native/instance-methods/local-audio"},{"title":"localScreenAudio()","href":"/reference/react-native/instance-methods/local-screen-audio"},{"title":"localScreenVideo()","href":"/reference/react-native/instance-methods/local-screen-video"},{"title":"localVideo()","href":"/reference/react-native/instance-methods/local-video"},{"title":"meetingSessionState()","href":"/reference/react-native/instance-methods/meeting-session-state"},{"title":"meetingSessionSummary()","href":"/reference/react-native/instance-methods/meeting-session-summary"},{"title":"meetingState()","href":"/reference/react-native/instance-methods/meeting-state"},{"title":"nativeInCallAudioMode()","href":"/reference/react-native/instance-methods/native-in-call-audio-mode"},{"title":"off()","href":"/reference/react-native/instance-methods/off"},{"title":"on()","href":"/reference/react-native/instance-methods/on"},{"title":"once()","href":"/reference/react-native/instance-methods/once"},{"title":"participantCounts()","href":"/reference/react-native/instance-methods/participant-counts"},{"title":"participants()","href":"/reference/react-native/instance-methods/participants"},{"title":"preAuth()","href":"/reference/react-native/instance-methods/pre-auth"},{"title":"removeLiveStreamingEndpoints()","href":"/reference/react-native/instance-methods/remove-live-streaming-endpoints"},{"title":"requestAccess()","href":"/reference/react-native/instance-methods/request-access"},{"title":"room()","href":"/reference/react-native/instance-methods/room"},{"title":"sendAppMessage()","href":"/reference/react-native/instance-methods/send-app-message"},{"title":"sendDTMF()","href":"/reference/react-native/instance-methods/send-dtmf"},{"title":"setAudioDevice()","href":"/reference/react-native/instance-methods/set-audio-device"},{"title":"setCamera()","href":"/reference/react-native/instance-methods/set-camera"},{"title":"setIceConfig()","href":"/reference/react-native/instance-methods/set-ice-config"},{"title":"setLocalAudio()","href":"/reference/react-native/instance-methods/set-local-audio"},{"title":"setLocalVideo()","href":"/reference/react-native/instance-methods/set-local-video"},{"title":"setMeetingSessionData()","href":"/reference/react-native/instance-methods/set-meeting-session-data"},{"title":"setNativeInCallAudioMode()","href":"/reference/react-native/instance-methods/set-native-in-call-audio-mode"},{"title":"setProxyUrl()","href":"/reference/react-native/instance-methods/set-proxy-url"},{"title":"setSubscribeToTracksAutomatically()","href":"/reference/react-native/instance-methods/set-subscribe-to-tracks-automatically"},{"title":"setUserData()","href":"/reference/react-native/instance-methods/set-user-data"},{"title":"setUserName()","href":"/reference/react-native/instance-methods/set-user-name"},{"title":"sipCallTransfer()","href":"/reference/react-native/instance-methods/sip-call-transfer"},{"title":"sipRefer()","href":"/reference/react-native/instance-methods/sip-refer"},{"title":"startCamera()","href":"/reference/react-native/instance-methods/start-camera"},{"title":"startDialOut()","href":"/reference/react-native/instance-methods/start-dial-out"},{"title":"startLiveStreaming()","href":"/reference/react-native/instance-methods/start-live-streaming"},{"title":"startLocalAudioLevelObserver()","href":"/reference/react-native/instance-methods/start-local-audio-level-observer"},{"title":"startRecording()","href":"/reference/react-native/instance-methods/start-recording"},{"title":"startRemoteParticipantsAudioLevelObserver()","href":"/reference/react-native/instance-methods/start-remote-participants-audio-level-observer"},{"title":"startScreenShare()","href":"/reference/react-native/instance-methods/start-screen-share"},{"title":"startTranscription()","href":"/reference/react-native/instance-methods/start-transcription"},{"title":"stopDialOut()","href":"/reference/react-native/instance-methods/stop-dial-out"},{"title":"stopLiveStreaming()","href":"/reference/react-native/instance-methods/stop-live-streaming"},{"title":"stopLocalAudioLevelObserver()","href":"/reference/react-native/instance-methods/stop-local-audio-level-observer"},{"title":"stopRecording()","href":"/reference/react-native/instance-methods/stop-recording"},{"title":"stopRemoteParticipantsAudioLevelObserver()","href":"/reference/react-native/instance-methods/stop-remote-participants-audio-level-observer"},{"title":"stopScreenShare()","href":"/reference/react-native/instance-methods/stop-screen-share"},{"title":"stopTestPeerToPeerCallQuality()","href":"/reference/react-native/instance-methods/stop-test-peer-to-peer-call-quality"},{"title":"stopTranscription()","href":"/reference/react-native/instance-methods/stop-transcription"},{"title":"testNetworkConnectivity()","href":"/reference/react-native/instance-methods/test-network-connectivity"},{"title":"testPeerToPeerCallQuality()","href":"/reference/react-native/instance-methods/test-peer-to-peer-call-quality"},{"title":"testWebsocketConnectivity()","href":"/reference/react-native/instance-methods/test-websocket-connectivity"},{"title":"updateLiveStreaming()","href":"/reference/react-native/instance-methods/update-live-streaming"},{"title":"updateParticipant()","href":"/reference/react-native/instance-methods/update-participant"},{"title":"updateParticipants()","href":"/reference/react-native/instance-methods/update-participants"},{"title":"updateReceiveSettings()","href":"/reference/react-native/instance-methods/update-receive-settings"},{"title":"updateRecording()","href":"/reference/react-native/instance-methods/update-recording"},{"title":"updateScreenShare()","href":"/reference/react-native/instance-methods/update-screen-share"},{"title":"updateSendSettings()","href":"/reference/react-native/instance-methods/update-send-settings"},{"title":"updateTranscription()","href":"/reference/react-native/instance-methods/update-transcription"},{"title":"updateWaitingParticipant()","href":"/reference/react-native/instance-methods/update-waiting-participant"},{"title":"updateWaitingParticipants()","href":"/reference/react-native/instance-methods/update-waiting-participants"},{"title":"waitingParticipants()","href":"/reference/react-native/instance-methods/waiting-participants"}]},{"group":"Events","pages":[{"title":"react-native-daily-js events","href":"/reference/react-native/events/index"},{"title":"Lifecycle events","href":"/reference/react-native/events/lifecycle-events"},{"title":"Participant events","href":"/reference/react-native/events/participant-events"},{"title":"Media events","href":"/reference/react-native/events/media-events"},{"title":"Network events","href":"/reference/react-native/events/network-events"},{"title":"Settings \u0026 device events","href":"/reference/react-native/events/settings-events"},{"title":"Messaging events","href":"/reference/react-native/events/messaging-events"},{"title":"Recording events","href":"/reference/react-native/events/recording-events"},{"title":"Live streaming events","href":"/reference/react-native/events/live-streaming-events"},{"title":"Transcription events","href":"/reference/react-native/events/transcription-events"},{"title":"Telephony events (SIP/PSTN)","href":"/reference/react-native/events/telephony-events"},{"title":"Error events","href":"/reference/react-native/events/error-events"}]}]},{"dropdown":"Android","icon":"android","href":"https://reference-android.daily.co/"},{"dropdown":"iOS","icon":"apple","href":"https://reference-ios.daily.co/"},{"dropdown":"Flutter","icon":"flutter","href":"https://pub.dev/packages/daily_flutter"},{"dropdown":"Python","icon":"python","href":"https://reference-python.daily.co/"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]},"title":"SIP Interconnect and Pinless PSTN dial-in - Daily","buildId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","deploymentId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","dynamics":[],"chunks":[]}