{"servers":[{"url":"https:\/\/api.n2p.io\/v2","description":"net2phone Production API Server"}],"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"info":{"title":"net2phone API","description":"net2phone's public API.","termsOfService":"https:\/\/app.net2phone.com\/settings\/termsandpolicies","x-internalVersion":"spec-2.252.0","version":"3.0.0","license":{"name":"MIT","url":"https:\/\/spdx.org\/licenses\/MIT"}},"openapi":"3.0.3","tags":[{"name":"Blocked Callers","description":"Filter out unwanted incoming calls by managing blocked phone number list."},{"name":"Call Detail Record","description":"Get historical information about calls, voicemails and call recordings."},{"name":"Call Forwarding","description":"Configure call forwarding settings."},{"name":"Call Queue","description":"Manage call queues."},{"name":"Call Recording","description":"Manage call recordings and related settings."},{"name":"Channel Conversation","description":"Manage channel conversation."},{"name":"Click-to-Call","description":"Place calls programmatically."},{"name":"Contact","description":"Search contacts in the company directory."},{"name":"Extension Presence","description":"Know the presence status of the extensions."},{"name":"Huddle Dial In Phone Number","description":"Retrieve information about phone numbers which can be used to dial in into Huddle rooms."},{"name":"Huddle Room","description":"Manage Huddle rooms."},{"name":"Messaging Campaign Registry","description":"Manage messaging campaigns and brand within [Campaign Registry](https:\/\/www.campaignregistry.com). For more information see the [FAQ](https:\/\/www.campaignregistry.com\/faq)."},{"name":"Messaging Enabled Phone Number","description":"Manage Messaging Enabled Phone Numbers."},{"name":"Messaging Enabled Phone Number Assignment","description":"Manage Messaging Enabled Phone Number Assignments."},{"name":"Phone Number","description":"Manage Phone Numbers."},{"name":"Phone Number Bound Conversation","description":"Manage channel phone number bound conversation."},{"name":"Direct User Conversation","description":"Operate with direct user conversation."},{"name":"Direct Group Conversation","description":"Operate with direct group conversation."},{"name":"Port Out","description":"Record customer requests to port phone numbers away from net2phone, and return the PINs the gaining carrier requires."},{"name":"SIP Registration","description":"Get the recent SIP registrations of extensions (made by hard and soft phones)."},{"name":"SIP Trunking","description":"Manage sip trunks, sip trunk accounts."},{"name":"User","description":"Manage team members and their access level."},{"name":"Virtual Agent","description":"Manage and interact with virtual agents."},{"name":"Voicemail","description":"Manage voicemails."},{"name":"Webhook Subscription","description":"Subscribe to call, voicemail, message events."}],"paths":{"\/call-queues\/{call_queue_id}\/statistics\/supervisor":{"get":{"description":"Get call queue statistics for supervisors.","responses":{"200":{"description":"Call queue statistics for supervisors.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/call-queue-supervisor-statistics"}}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"Get call queue statistics supervisor","parameters":[{"$ref":"#\/components\/parameters\/call-queue-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"GetCallQueueStatisticsSupervisor","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Call Queue"]}},"\/virtual-agent\/tools\/{tool_id}":{"get":{"description":"Get details of specified tool.","responses":{"200":{"description":"Tool object.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/tool"}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"GetTool","summary":"Get tool","parameters":[{"$ref":"#\/components\/parameters\/tool-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]},"put":{"description":"Updates the specified tool.","responses":{"200":{"description":"The tool was successfully updated.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/tool"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Update tool","parameters":[{"$ref":"#\/components\/parameters\/tool-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"UpdateTool","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/update-tool-command"}}}}},"delete":{"description":"Delete the specified tool.","responses":{"204":{"description":"Tool was deleted successfully.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"409":{"$ref":"#\/components\/responses\/tool-delete-error"}},"operationId":"DeleteTool","summary":"Delete tool","parameters":[{"$ref":"#\/components\/parameters\/tool-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/messaging-enabled-phone-numbers:set-registration":{"post":{"description":"Change the registration state of the sms_mms channel for a messaging-enabled phone number.\n\nThis operation supports multiple request types:\n* `set_registration_unrestricted`: Register unrestricted phone numbers with a specified messaging direction\n* `set_registration_toll_free`: Register toll-free phone numbers with a specified messaging direction\n* `set_registration_campaign_registry`: Register Campaign Registry (10DLC) phone numbers (always uses two-way messaging direction) with a campaign association\n* `unset_registration`: Unregister phone numbers from SMS\/MMS messaging\n\n**Asynchronous Processing**\n\nAll registration operations (registration, type changes, and unregistration) are processed asynchronously.\nThe operation returns a 202 Accepted status. Any active registration change will be overridden by this new request.","responses":{"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"202":{"description":"The registration change request has been accepted for processing.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Set messaging enabled phone number registration","x-n2p-accountBackendTypes":["unite","unite3"],"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"operationId":"SetMessagingEnabledPhoneNumberRegistration","tags":["Messaging Enabled Phone Number"],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/set-messaging-enabled-phone-number-registration-command"}}}}}},"\/webhook-subscriptions\/{webhook_subscription_id}":{"get":{"description":"Get details of specified webhook subscription if you are an `admin` of this account or `owner` of that subscription.","responses":{"200":{"description":"Webhook subscription object.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"examples":{"UserScopedWebhookSubscription":{"$ref":"#\/components\/examples\/user-scoped-webhook-subscription-response"}},"schema":{"$ref":"#\/components\/schemas\/webhook-subscription"}}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"Get webhook subscription","parameters":[{"$ref":"#\/components\/parameters\/webhook-subscription-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"GetWebhookSubscription","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Webhook Subscription"]},"put":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"200":{"description":"Updated webhook subscription object.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"examples":{"UserScopedWebhookSubscription":{"$ref":"#\/components\/examples\/user-scoped-webhook-subscription-response"}},"schema":{"$ref":"#\/components\/schemas\/webhook-subscription"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Update webhook subscription","parameters":[{"$ref":"#\/components\/parameters\/webhook-subscription-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"requestBody":{"required":true,"content":{"application\/json":{"examples":{"UserScopedWebhookSubscription":{"$ref":"#\/components\/examples\/user-scoped-webhook-subscription-request"}},"schema":{"$ref":"#\/components\/schemas\/update-webhook-subscription-command"}}}},"operationId":"UpdateWebhookSubscription","description":"Update the details of specified subscription if you are an `admin` of this account or `owner` of that subscription.","tags":["Webhook Subscription"],"callbacks":{"CallRecorded":{"$ref":"#\/components\/callbacks\/call-recorded"},"AiAgentConversationSummaryFinished":{"$ref":"#\/components\/callbacks\/ai-agent-conversation-summary-finished"},"CallRecordingAnalyticsResults":{"$ref":"#\/components\/callbacks\/call-recording-analytics-results"},"CallRgQueueCompleted":{"$ref":"#\/components\/callbacks\/call-rg-queue-completed"},"CallResume":{"$ref":"#\/components\/callbacks\/call-resume"},"CallPickup":{"$ref":"#\/components\/callbacks\/call-pickup"},"CallAnswered":{"$ref":"#\/components\/callbacks\/call-answered"},"CallRgQueueEntered":{"$ref":"#\/components\/callbacks\/call-rg-queue-entered"},"CallBlindTransfer":{"$ref":"#\/components\/callbacks\/call-blind-transfer"},"CallPark":{"$ref":"#\/components\/callbacks\/call-park"},"CallBlocked":{"$ref":"#\/components\/callbacks\/call-blocked"},"CallRgQueueTier":{"$ref":"#\/components\/callbacks\/call-rg-queue-tier"},"CallBusy":{"$ref":"#\/components\/callbacks\/call-busy"},"CallMissed":{"$ref":"#\/components\/callbacks\/call-missed"},"CallCompleted":{"$ref":"#\/components\/callbacks\/call-completed"},"CallRinging":{"$ref":"#\/components\/callbacks\/call-ringing"},"ClickToCallResult":{"$ref":"#\/components\/callbacks\/click-to-call-result"},"CallHold":{"$ref":"#\/components\/callbacks\/call-hold"},"CallUnpark":{"$ref":"#\/components\/callbacks\/call-unpark"},"MessageReceived":{"$ref":"#\/components\/callbacks\/message-received"},"CallForward":{"$ref":"#\/components\/callbacks\/call-forward"},"MessageSent":{"$ref":"#\/components\/callbacks\/message-sent"},"EmergencyCall":{"$ref":"#\/components\/callbacks\/emergency-call"},"VoicemailMissed":{"$ref":"#\/components\/callbacks\/voicemail-missed"},"CallConsultativeTransfer":{"$ref":"#\/components\/callbacks\/call-consultative-transfer"},"VoicemailNotify":{"$ref":"#\/components\/callbacks\/voicemail-notify"},"AiAgentConversationEnded":{"$ref":"#\/components\/callbacks\/ai-agent-conversation-ended"},"VoicemailReceived":{"$ref":"#\/components\/callbacks\/voicemail-received"},"CallRecordingFailed":{"$ref":"#\/components\/callbacks\/call-recording-failed"}}},"delete":{"description":"Delete specified webhook subscription if you are an `admin` of this account or `owner` of that subscription.","responses":{"204":{"description":"The webhook subscription was deleted successfully.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"Delete webhook subscription","parameters":[{"$ref":"#\/components\/parameters\/webhook-subscription-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"DeleteWebhookSubscription","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Webhook Subscription"]}},"\/available-phone-numbers:lookup":{"post":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"200":{"description":"The collection of Available Phone Numbers matching the search criteria.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/collection-of-available-phone-numbers"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Lookup available phone numbers","x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Phone Number"],"operationId":"LookupAvailablePhoneNumbers","description":"Gets a list of available phone numbers from the available pool that you can add to your net2phone account. Accessible only to admin users.","requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/lookup-available-phone-numbers-command"}}}}}},"\/virtual-agent\/knowledge-bases\/{knowledge_base_id}\/data-imports":{"post":{"description":"Creates a Data Import. If the import is based on a file such as a PDF or CSV file, then it returns a URL where the file needs to be uploaded to start processing.","responses":{"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"202":{"description":"Creates a Data Import.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-data-import-response"}}}},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Create virtual agent knowledge base data import","parameters":[{"$ref":"#\/components\/parameters\/knowledge-base-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"CreateVirtualAgentKnowledgeBaseDataImport","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-data-import-command"}}}}},"get":{"description":"List a Knowledge Base's Data Imports.","responses":{"200":{"description":"Page of a Knowledge Base's Data Imports.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/cursor-page-of-data-imports"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"ListVirtualAgentKnowledgeBaseDataImports","summary":"List virtual agent knowledge base data imports","parameters":[{"$ref":"#\/components\/parameters\/knowledge-base-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/virtual-agent\/conversations\/{conversation_id}":{"get":{"description":"Get details of specified conversation.","responses":{"200":{"description":"Conversation object.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/conversation"}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"GetConversation","summary":"Get conversation","parameters":[{"$ref":"#\/components\/parameters\/conversation-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/phone-numbers":{"get":{"description":"Gets a list of Phone Numbers that are currently associated with your net2phone account ordered by descending the time it's added to your net2phone account.","responses":{"200":{"description":"Cursor page of Phone Numbers.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/cursor-page-of-phone-number"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"List phone numbers","parameters":[{"$ref":"#\/components\/parameters\/before"},{"$ref":"#\/components\/parameters\/after"},{"$ref":"#\/components\/parameters\/limit"},{"$ref":"#\/components\/parameters\/phone-number-assignment-status"},{"description":"If `true`, the response will also include the current `counters` of Phone Numbers associated with each callable resource.","schema":{"type":"boolean","default":false},"required":false,"name":"include_counters","in":"query"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"ListPhoneNumbers","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Phone Number"]}},"\/virtual-agent\/conversations\/{conversation_id}\/messages":{"post":{"description":"Adds a new message to the specified conversation.","responses":{"201":{"description":"The conversation message was successfully created and the reply message is returned in the response.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/conversation-message-turn-response"}}}},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"409":{"$ref":"#\/components\/responses\/create-conversation-message-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"}},"tags":["Virtual Agent"],"summary":"Create conversation message","parameters":[{"$ref":"#\/components\/parameters\/conversation-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"CreateConversationMessage","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-conversation-message-command"}}}}},"get":{"description":"List the messages of the specified conversation in chronological order.","responses":{"200":{"description":"List of conversation messages.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"type":"object","properties":{"conversation_messages":{"items":{"$ref":"#\/components\/schemas\/conversation-message"},"type":"array"}}}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"ListConversationMessages","summary":"List conversation messages","parameters":[{"$ref":"#\/components\/parameters\/conversation-id"},{"description":"Flag to include tool messages in the response.","schema":{"example":true,"type":"boolean"},"name":"include_tools","in":"query"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/messaging-enabled-phone-number-assignments":{"get":{"description":"Gets a list of messaging enabled phone number assignments that are currently associated with your net2phone account.","responses":{"200":{"description":"Cursor page of messaging enabled phone number assignments.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/cursor-page-of-messaging-enabled-phone-number-assignment"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"List messaging enabled phone number assignments","parameters":[{"$ref":"#\/components\/parameters\/before"},{"$ref":"#\/components\/parameters\/after"},{"$ref":"#\/components\/parameters\/limit"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"ListMessagingEnabledPhoneNumberAssignments","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Messaging Enabled Phone Number Assignment"]}},"\/virtual-agent\/virtual-agents\/{virtual_agent_id}\/knowledge-bases":{"post":{"description":"Grants access from an existing Virtual Agent to an existing Knowledge Base.","responses":{"200":{"description":"The Knowledge Base was successfully assigned to the Virtual Agent.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/knowledge-base-assignment"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Add knowledge base to virtual agent","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"AddKnowledgeBaseToVirtualAgent","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"required":["knowledge_base_id"],"type":"object","properties":{"knowledge_base_id":{"$ref":"#\/components\/schemas\/knowledge-base-id"}}}}}}}},"\/sip-registrations":{"get":{"description":"List the available sip registrations against the extensions ordered by descending registration time. A limited set of registrations are returned, stale registrations are cleaned up over time.","responses":{"200":{"description":"List of SIP registrations against the `extension`s.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/cursor-page-of-sip-registration"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"List sip registrations","parameters":[{"$ref":"#\/components\/parameters\/extension-filter-value"},{"$ref":"#\/components\/parameters\/sip-registration-status"},{"$ref":"#\/components\/parameters\/limit"},{"$ref":"#\/components\/parameters\/before"},{"$ref":"#\/components\/parameters\/after"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"ListSipRegistrations","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["SIP Registration"]}},"\/webhook-subscriptions\/{webhook_subscription_id}\/secret":{"put":{"description":"Regenerate the secret of specified webhook subscription if you are an `admin` of this account or `owner` of this subscription.","responses":{"200":{"description":"Webhook subscription secret was regenerated successfully.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/webhook-subscription-secret"}}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"Regenerate webhook subscription secret","parameters":[{"$ref":"#\/components\/parameters\/webhook-subscription-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"RegenerateWebhookSubscriptionSecret","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Webhook Subscription"]}},"\/messaging-enabled-phone-number-assignments\/{messaging_enabled_phone_number_assignment_id}":{"put":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"200":{"description":"Updated messaging enabled phone number assignment.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-assignment"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Update messaging enabled phone number assignment","parameters":[{"$ref":"#\/components\/parameters\/messaging-enabled-phone-number-assignment-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Messaging Enabled Phone Number Assignment"],"operationId":"UpdateMessagingEnabledPhoneNumberAssignment","description":"Updates messaging enabled phone number assignment. Only accessible for admin users.","requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/update-messaging-enabled-phone-number-assignment-command"}}}}}},"\/call-recordings\/{call_recording_id}:generate-audio-download-link":{"get":{"description":"Generate a temporary call recording download link. This is only available if the call recording is not yet deleted. Optionally, you can make it redirect to the download link, by omitting or using any non-JSON content type in the `Accept` header.","responses":{"200":{"description":"The call recording audio download link object. Returned if a JSON content type is requested via the `Accept` header.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/download-link"}}}},"404":{"$ref":"#\/components\/responses\/not-found-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"409":{"$ref":"#\/components\/responses\/conflict-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"302":{"description":"Redirect to the call recording audio URL. Returned if a non-JSON content type is requested via the `Accept` header.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"Location":{"description":"Temporary call recording audio URL.","schema":{"example":"https:\/\/mediastorage.n2p.io\/unitecallrec\/1\/1\/1\/a\/callrec_10000000_g711.wav?token=abc123","type":"string","minLength":1}},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}}},"x-n2p-throttlingQuota":1,"summary":"Generate call recording audio download link","parameters":[{"$ref":"#\/components\/parameters\/call-recording-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"GenerateCallRecordingAudioDownloadLink","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Call Recording"]}},"\/phone-numbers:batch-create":{"post":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"400":{"$ref":"#\/components\/responses\/bad-request-error"},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/batch-create-phone-numbers-forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"202":{"description":"The collection of Phone Numbers that will be added to your net2phone account in a few seconds.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/collection-of-phone-numbers"}}}}},"x-n2p-throttlingQuota":1,"summary":"Batch create phone numbers","x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Phone Number"],"operationId":"BatchCreatePhoneNumbers","description":"Adds specified Available Phone Numbers to your net2phone account as Phone Numbers. Accessible only to admin users.","requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/batch-create-phone-numbers-command"}}}}}},"\/virtual-agent\/virtual-agents\/{virtual_agent_id}\/knowledge-bases\/{knowledge_base_id}":{"delete":{"description":"Revoke existing access from this Virtual Agent to a Knowledge Base.","responses":{"204":{"description":"Access was revoked successfully.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"DeleteKnowledgeBaseFromVirtualAgent","summary":"Delete knowledge base from virtual agent","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"},{"$ref":"#\/components\/parameters\/knowledge-base-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/virtual-agent\/virtual-agents\/{virtual_agent_id}\/conversations":{"get":{"description":"List a Virtual Agent's conversations.","responses":{"200":{"description":"Page of conversations.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/cursor-page-of-virtual-agent-conversation"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"ListVirtualAgentConversations","summary":"List virtual agent conversations","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"},{"$ref":"#\/components\/parameters\/limit"},{"$ref":"#\/components\/parameters\/before"},{"$ref":"#\/components\/parameters\/after"},{"description":"Filter by creation time (inclusive start).","schema":{"example":"2022-06-01T07:20:00Z","type":"string","format":"date-time"},"name":"start_time","in":"query"},{"description":"Filter by creation time (inclusive end).","schema":{"example":"2022-06-01T07:35:00Z","type":"string","format":"date-time"},"name":"end_time","in":"query"},{"description":"Filter by transport type(s). Can be specified multiple times.","schema":{"items":{"$ref":"#\/components\/schemas\/conversation-transport"},"type":"array"},"name":"transport","in":"query"},{"description":"Filter by originating phone number in E.164 format or \"Anonymous\" if the caller has turned off caller ID.","schema":{"example":"+123456789","type":"string"},"name":"from","in":"query"},{"description":"Filter by originating phone number in E.164 format or \"Anonymous\" if the caller has turned off caller ID (for voice transport). Deprecated, use `from` instead.","schema":{"example":"+123456789","type":"string"},"name":"voice_details_from","in":"query","deprecated":true}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/virtual-agent\/conversations\/{conversation_id}\/tool-results":{"post":{"description":"Submits the result of a client-executed tool call for the specified Virtual Agent conversation, resuming the agent turn. The tool's `response` configuration (`transform`, `context`, `system_message`) is applied to the submitted `content` exactly as it is for a service-executed tool. If `content` is not valid JSON, `transform` is skipped and the content is passed to the agent unchanged. If an expression fails on valid-JSON content, the request returns `422` with a validation error on `content`, nothing is recorded on the conversation, and the tool call remains pending.","responses":{"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"409":{"$ref":"#\/components\/responses\/submit-tool-result-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"200":{"description":"The tool result was successfully submitted and the agent turn is resumed.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/conversation-message-turn-response"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"}},"tags":["Virtual Agent"],"summary":"Submit virtual agent tool result","parameters":[{"$ref":"#\/components\/parameters\/conversation-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"SubmitVirtualAgentToolResult","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/submit-tool-result-command"}}}}}},"\/virtual-agent\/mcp-servers\/{mcp_server_id}":{"get":{"description":"Get details of specified MCP Server.","responses":{"200":{"description":"MCP Server object.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/mcp-server"}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"GetMCPServer","summary":"Get mcp server","parameters":[{"$ref":"#\/components\/parameters\/mcp-server-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]},"put":{"description":"Updates the specified MCP Server.","responses":{"200":{"description":"The MCP Server was successfully updated.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/mcp-server"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Update mcp server","parameters":[{"$ref":"#\/components\/parameters\/mcp-server-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"UpdateMCPServer","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/update-mcp-server-command"}}}}},"delete":{"description":"Delete the specified MCP Server.","responses":{"204":{"description":"MCP Server was deleted successfully.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"409":{"$ref":"#\/components\/responses\/mcp-server-delete-error"}},"operationId":"DeleteMCPServer","summary":"Delete mcp server","parameters":[{"$ref":"#\/components\/parameters\/mcp-server-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/call-recordings:batch-set-view-status":{"post":{"description":"Marks the specified call recordings as read or unread if they are not deleted. Returns `not_found_error` if there is at least one non-existing\/deleted `call_recording_id` found. Returns `conflict_error` if there is at least one recording in processing status found.","responses":{"200":{"description":"The collection of updated call recording resources.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/collection-of-call-recordings"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"409":{"$ref":"#\/components\/responses\/conflict-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"}},"x-n2p-throttlingQuota":1,"summary":"Batch set call recording view status","x-n2p-accountBackendTypes":["unite","unite3"],"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"operationId":"BatchSetCallRecordingViewStatus","tags":["Call Recording"],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/batch-set-call-recordings-view-status-command"}}}}}},"\/virtual-agent\/knowledge-bases\/{knowledge_base_id}\/data-sources":{"post":{"description":"Attaches a list of Data Sources to an existing Knowledge Base.","responses":{"201":{"description":"The Data Sources were successfully attached.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"type":"object","properties":{"data_sources":{"items":{"$ref":"#\/components\/schemas\/data-source"},"type":"array"}}}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Create data source in knowledge base","parameters":[{"$ref":"#\/components\/parameters\/knowledge-base-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"CreateDataSourceInKnowledgeBase","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-data-source-command"}}}}},"get":{"description":"List a Knowledge Base's Data Sources.","responses":{"200":{"description":"List a Knowledge Base's Data Sources.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"type":"object","properties":{"data_sources":{"items":{"$ref":"#\/components\/schemas\/data-source"},"type":"array"}}}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"ListKnowledgeBaseDataSources","summary":"List knowledge base data sources","parameters":[{"$ref":"#\/components\/parameters\/knowledge-base-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/virtual-agent\/conversations\/{conversation_id}:end":{"post":{"description":"Ends an open chat conversation.\nThe operation is idempotent: if the conversation is already ended, the current conversation state is returned.\nOnly chat conversations are supported. Requests for other transports (for example, voice or messaging) return `409 Conflict`.","responses":{"200":{"description":"The conversation was ended, or was already ended.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/conversation"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"409":{"$ref":"#\/components\/responses\/end-conversation-error"}},"operationId":"EndVirtualAgentChatConversation","summary":"End virtual agent chat conversation","parameters":[{"$ref":"#\/components\/parameters\/conversation-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/call-recordings:batch-delete":{"post":{"description":"Marks the specified call recordings as deleted and deletes their audio content, if they are not already deleted. Returns `not_found_error` if there is at least one non-existing\/deleted `call_recording_id` found.","responses":{"200":{"description":"The list of deleted call recordings.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/collection-of-call-recordings"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Batch delete call recordings","x-n2p-accountBackendTypes":["unite","unite3"],"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"operationId":"BatchDeleteCallRecordings","tags":["Call Recording"],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/batch-delete-call-recordings-command"}}}}}},"\/voicemails\/{voicemail_id}":{"delete":{"description":"Marks voicemail as deleted and deletes audio content.","responses":{"429":{"$ref":"#\/components\/responses\/throttling-error"},"200":{"description":"The deleted voicemail.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/voicemail"},"example":{"created_at_time":"2022-06-01T07:39:00Z","duration_seconds":30,"status":"deleted","updated_at_time":"2022-06-05T05:00:00Z","id":"15","owner":{"display_name":"Sales","type":"department","id":"25"},"updated_by":{"first_name":"John","role":{"display_name":"Admin","id":"admin"},"last_name":"Doe","id":"28","avatar":null,"email":"john.doe@example.com"}}}}},"401":{"$ref":"#\/components\/responses\/authentication-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"}},"operationId":"DeleteVoicemail","summary":"Delete voicemail","parameters":[{"$ref":"#\/components\/parameters\/voicemail-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Voicemail"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}]}},"\/virtual-agent\/virtual-agents\/{virtual_agent_id}\/mcp-servers":{"post":{"description":"Grants access from an existing Virtual Agent to an existing MCP Server.","responses":{"200":{"description":"The MCP Server was successfully assigned to the Virtual Agent.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/mcp-server-assignment"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Add mcp server to virtual agent","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"AddMCPServerToVirtualAgent","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/add-mcp-server-to-virtual-agent-command"}}}}}},"\/virtual-agent\/conversations\/{conversation_id}:generate-audio-download-link":{"get":{"description":"Generate a temporary Virtual Agent conversation download link. Optionally, you can make it redirect to the download link, by omitting or using any non-JSON content type in the `Accept` header.","responses":{"200":{"description":"The Virtual Agent conversation audio download link object. Returned if a JSON content type is requested via the `Accept` header.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"allOf":[{"$ref":"#\/components\/schemas\/download-link"},{"properties":{"url":{"example":"https:\/\/n2p-virtual-agent.s3.amazonaws.com\/call?token=abc123"}}}]}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"302":{"description":"Redirect to the Virtual Agent conversation audio URL. Returned if a non-JSON content type is requested via the `Accept` header.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"Location":{"description":"Temporary Virtual Agent conversation audio URL.","schema":{"example":"https:\/\/n2p-virtual-agent.s3.amazonaws.com\/call?token=abc123","type":"string","minLength":1}},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}}},"operationId":"GenerateVirtualAgentConversationAudioDownloadLink","summary":"Generate virtual agent conversation audio download link","parameters":[{"$ref":"#\/components\/parameters\/conversation-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/phone-numbers\/{phone_number_id}:assign":{"post":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"409":{"$ref":"#\/components\/responses\/phone-number-assignment-required-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"202":{"description":"The assignment request has been accepted, and will be applied in a few seconds.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/phone-number-2"}}}}},"tags":["Phone Number"],"summary":"Assign phone number","parameters":[{"$ref":"#\/components\/parameters\/phone-number-id-2"}],"x-n2p-accountBackendTypes":["unite","unite3"],"x-n2p-throttlingQuota":1,"operationId":"AssignPhoneNumber","description":"Assigns an unassigned Phone Number to other callable resources. Only accessible for admin users.","requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/assign-phone-number-command"}}}}}},"\/virtual-agent\/mcp-servers\/{mcp_server_id}\/tools":{"get":{"description":"Lists the tools available from a saved MCP Server. Supports pagination via cursor.","responses":{"200":{"description":"MCP server tools results.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/mcp-server-tools-response"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"ListMCPServerTools","summary":"List mcp server tools","parameters":[{"$ref":"#\/components\/parameters\/mcp-server-id"},{"description":"Opaque cursor for fetching the next page.","schema":{"type":"string"},"name":"cursor","in":"query"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/call-queues":{"get":{"description":"Lists call queues.","responses":{"200":{"description":"Page of call queues.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/cursor-page-of-call-queue"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"List call queues","parameters":[{"$ref":"#\/components\/parameters\/limit"},{"$ref":"#\/components\/parameters\/before"},{"$ref":"#\/components\/parameters\/after"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"ListCallQueues","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Call Queue"]}},"\/users\/@me":{"get":{"description":"Gets the user object of the current logged in (who is accessing the API) user.","responses":{"200":{"description":"The user object of the current logged in user (who is accessing the API).","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"examples":{"User":{"$ref":"#\/components\/examples\/user"}},"schema":{"$ref":"#\/components\/schemas\/user-reference"}}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"Get current user","x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"GetCurrentUser","tags":["User"],"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}]}},"\/virtual-agent\/virtual-agents\/{virtual_agent_id}\/mcp-servers\/{mcp_server_id}":{"delete":{"description":"Revoke existing access from this Virtual Agent to a MCP Server.","responses":{"204":{"description":"Access was revoked successfully.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"DeleteMCPServerFromVirtualAgent","summary":"Delete mcp server from virtual agent","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"},{"$ref":"#\/components\/parameters\/mcp-server-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/phone-numbers\/{phone_number_id}:unassign":{"post":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"409":{"$ref":"#\/components\/responses\/phone-number-conflict-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"202":{"description":"The unassign request has been accepted, and will be applied in a few seconds.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/phone-number-2"}}}}},"tags":["Phone Number"],"summary":"Unassign phone number","parameters":[{"$ref":"#\/components\/parameters\/phone-number-id-2"}],"x-n2p-accountBackendTypes":["unite","unite3"],"x-n2p-throttlingQuota":1,"operationId":"UnassignPhoneNumber","description":"Un assigns a Phone Number from other callable resources. Only accessible for admin users. You can not unassign a `Phone Number` when it is assigned to a `User` or a `Special Extension` (of type `five9` or `remote_voicemail`) and the resource has no fallback Phone Number assigned. Also, you can not unassign a `Phone Number` if it's assigned to a `Virtual Fax`, you should instead delete the `Virtual Fax` to leave this `Phone Number` unassigned.","requestBody":{"required":false,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/unassign-phone-number-command-optional"}}}}}},"\/virtual-agent\/virtual-agents\/{virtual_agent_id}\/tools":{"post":{"description":"Grants access from an existing Virtual Agent to an existing Tool.","responses":{"200":{"description":"The tool was successfully assigned to the Virtual Agent.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/tool-assignment"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Add tool to virtual agent","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"AddToolToVirtualAgent","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/add-tool-to-virtual-agent-command"}}}}}},"\/users\/{user_id}\/call-forwarding-settings":{"get":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"200":{"description":"User's call forwarding settings.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/user-call-forwarding-settings"}}}},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"Get user call forwarding settings","parameters":[{"$ref":"#\/components\/parameters\/user-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"description":"Get the user's call forwarding settings. Returns the default settings if those are not yet configured.\n* `Regular` users can only access their own settings.\n* `Admin` users can access settings for every user in their net2phone account.","operationId":"GetUserCallForwardingSettings","tags":["Call Forwarding"]},"put":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"200":{"description":"Updated user's call forwarding settings.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/user-call-forwarding-settings"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Update user call forwarding settings","parameters":[{"$ref":"#\/components\/parameters\/user-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"UpdateUserCallForwardingSettings","tags":["Call Forwarding"],"description":"Update the user's call forwarding settings.\n* `Regular` users can only modify their own settings.\n* `Admin` users can access settings for every user in their net2phone account.","requestBody":{"required":true,"content":{"application\/json":{"examples":{"SequentialForwarding":{"$ref":"#\/components\/examples\/sequential-call-forwarding-settings"},"SimultaneousForwarding":{"$ref":"#\/components\/examples\/simultaneous-call-forwarding-settings"}},"schema":{"$ref":"#\/components\/schemas\/user-call-forwarding-settings"}}}}}},"\/contacts":{"get":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"200":{"description":"A page of contacts.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/cursor-page-of-contact"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"List contacts","parameters":[{"$ref":"#\/components\/parameters\/limit"},{"$ref":"#\/components\/parameters\/before"},{"$ref":"#\/components\/parameters\/after"},{"$ref":"#\/components\/parameters\/contact-search-query"},{"description":"Only include specified contact types in the resulting list. If unspecified, all contact types are returned. To make sure newly added contact types don't break your client, always fill this parameter with types your client can handle.","schema":{"items":{"$ref":"#\/components\/schemas\/contact-type-filter-value"},"type":"array"},"required":false,"name":"types","in":"query"}],"x-n2p-accountBackendTypes":["unite","unite3"],"description":"List contacts from a company directory including users, departments, ring groups, welcome menus, special extensions and call queues. The results are sorted by descending creation time. If the creation time is the same, `id` is used to keep a stable sort order.","operationId":"ListContacts","tags":["Contact"]}},"\/webhook-subscriptions":{"get":{"description":"Lists all webhook subscriptions accessible to the current user. `Admin` users will get both `Account` and `User` subscriptions. `Regular` users get their own webhook subscriptions only.","responses":{"200":{"description":"Page of webhook subscriptions.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/cursor-page-of-webhook-subscription"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"List webhook subscriptions","parameters":[{"$ref":"#\/components\/parameters\/limit"},{"$ref":"#\/components\/parameters\/before"},{"$ref":"#\/components\/parameters\/after"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"ListWebhookSubscriptions","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Webhook Subscription"]},"post":{"description":"Creates a webhook subscription to receive callbacks on `endpoint_url` for the event types subscribed to.","responses":{"201":{"description":"Webhook subscription was successfully created.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"examples":{"UserScopedWebhookSubscription":{"$ref":"#\/components\/examples\/user-scoped-webhook-subscription-response"},"AiAgentScopedWebhookSubscription":{"$ref":"#\/components\/examples\/ai-agent-scoped-webhook-subscription-response"}},"schema":{"$ref":"#\/components\/schemas\/webhook-subscription"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Create webhook subscription","x-n2p-accountBackendTypes":["unite","unite3"],"callbacks":{"CallRecorded":{"$ref":"#\/components\/callbacks\/call-recorded"},"AiAgentConversationSummaryFinished":{"$ref":"#\/components\/callbacks\/ai-agent-conversation-summary-finished"},"CallRecordingAnalyticsResults":{"$ref":"#\/components\/callbacks\/call-recording-analytics-results"},"CallRgQueueCompleted":{"$ref":"#\/components\/callbacks\/call-rg-queue-completed"},"CallResume":{"$ref":"#\/components\/callbacks\/call-resume"},"CallPickup":{"$ref":"#\/components\/callbacks\/call-pickup"},"CallAnswered":{"$ref":"#\/components\/callbacks\/call-answered"},"CallRgQueueEntered":{"$ref":"#\/components\/callbacks\/call-rg-queue-entered"},"CallBlindTransfer":{"$ref":"#\/components\/callbacks\/call-blind-transfer"},"CallPark":{"$ref":"#\/components\/callbacks\/call-park"},"CallBlocked":{"$ref":"#\/components\/callbacks\/call-blocked"},"CallRgQueueTier":{"$ref":"#\/components\/callbacks\/call-rg-queue-tier"},"CallBusy":{"$ref":"#\/components\/callbacks\/call-busy"},"CallMissed":{"$ref":"#\/components\/callbacks\/call-missed"},"CallCompleted":{"$ref":"#\/components\/callbacks\/call-completed"},"CallRinging":{"$ref":"#\/components\/callbacks\/call-ringing"},"ClickToCallResult":{"$ref":"#\/components\/callbacks\/click-to-call-result"},"CallHold":{"$ref":"#\/components\/callbacks\/call-hold"},"CallUnpark":{"$ref":"#\/components\/callbacks\/call-unpark"},"MessageReceived":{"$ref":"#\/components\/callbacks\/message-received"},"CallForward":{"$ref":"#\/components\/callbacks\/call-forward"},"MessageSent":{"$ref":"#\/components\/callbacks\/message-sent"},"EmergencyCall":{"$ref":"#\/components\/callbacks\/emergency-call"},"VoicemailMissed":{"$ref":"#\/components\/callbacks\/voicemail-missed"},"CallConsultativeTransfer":{"$ref":"#\/components\/callbacks\/call-consultative-transfer"},"VoicemailNotify":{"$ref":"#\/components\/callbacks\/voicemail-notify"},"AiAgentConversationEnded":{"$ref":"#\/components\/callbacks\/ai-agent-conversation-ended"},"VoicemailReceived":{"$ref":"#\/components\/callbacks\/voicemail-received"},"CallRecordingFailed":{"$ref":"#\/components\/callbacks\/call-recording-failed"}},"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"operationId":"CreateWebhookSubscription","tags":["Webhook Subscription"],"requestBody":{"required":true,"content":{"application\/json":{"examples":{"UserScopedWebhookSubscription":{"$ref":"#\/components\/examples\/user-scoped-webhook-subscription-request"},"AiAgentScopedWebhookSubscription":{"$ref":"#\/components\/examples\/ai-agent-scoped-webhook-subscription-request"}},"schema":{"$ref":"#\/components\/schemas\/create-webhook-subscription-command"}}}}}},"\/virtual-agent\/tts-voices":{"get":{"summary":"List text to speech voices","description":"List the supported Text-to-Speech voices.","x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"200":{"description":"List of voices.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"type":"object","properties":{"tts_voices":{"items":{"$ref":"#\/components\/schemas\/tts-voice"},"type":"array"}}}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"tags":["Virtual Agent"],"operationId":"ListTextToSpeechVoices","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/virtual-agent\/virtual-agents\/{virtual_agent_id}\/voice-conversation-templates":{"post":{"description":"Creates a new Voice Conversation Template for an existing Virtual Agent.","responses":{"201":{"description":"The Voice Conversation Template was successfully created.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/voice-conversation-template"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Create voice conversation template in virtual agent","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"CreateVoiceConversationTemplateInVirtualAgent","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-voice-conversation-template-command"}},"multipart\/form-data":{"schema":{"type":"object","properties":{"request":{"$ref":"#\/components\/schemas\/create-voice-conversation-template-command"},"background_audio":{"type":"string","format":"binary"}}}}}}},"get":{"description":"List a Virtual Agent's Voice Conversation Templates.","responses":{"200":{"description":"List of Voice Conversation Templates.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"type":"object","properties":{"voice_conversation_templates":{"items":{"$ref":"#\/components\/schemas\/voice-conversation-template-response"},"type":"array"}}}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"ListVirtualAgentVoiceConversationTemplates","summary":"List virtual agent voice conversation templates","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/sip-trunk-accounts":{"get":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"402":{"$ref":"#\/components\/responses\/feature-unavailable-error"},"200":{"description":"The page of SIP trunks accounts.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/page-of-sip-trunk-account"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"x-n2p-internal":false,"parameters":[{"$ref":"#\/components\/parameters\/page-index"},{"$ref":"#\/components\/parameters\/page-size"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"ListSipTrunkAccounts","description":"Lists SIP Trunk accounts belonging to the current net2phone organization, sorted by `created_at_time` in the descending order. This API is only available if SIP Trunking feature is enabled for the organization and the user is given a permission to manage a specific `SipTrunkAccount`.","summary":"List sip trunk accounts","tags":["SIP Trunking"]}},"\/virtual-agent\/tts-voices\/{tts_voice_id}\/sample":{"post":{"description":"Synthesize a sample audio clip for a specific voice and requested text.","responses":{"200":{"description":"Synthesized audio file.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"audio\/mpeg":{"schema":{"type":"string","format":"binary"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Play virtual agent voice sample","parameters":[{"$ref":"#\/components\/parameters\/tts-voice-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"PlayVirtualAgentVoiceSample","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/play-virtual-agent-voice-sample-command"}}}}}},"\/virtual-agent\/knowledge-bases\/{knowledge_base_id}\/data-imports\/{data_import_id}":{"delete":{"description":"Delete the specified Data Import from a Knowledge Base. This only deletes the import, not the Data Sources generated from the import.","responses":{"204":{"description":"Data Import was deleted successfully.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"DeleteVirtualAgentKnowledgeBaseDataImport","summary":"Delete virtual agent knowledge base data import","parameters":[{"$ref":"#\/components\/parameters\/knowledge-base-id"},{"$ref":"#\/components\/parameters\/data-import-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]},"get":{"description":"Get the specified Data Import from a Knowledge Base.","responses":{"200":{"description":"Data Import object.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/data-import"}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"GetVirtualAgentKnowledgeBaseDataImport","summary":"Get virtual agent knowledge base data import","parameters":[{"$ref":"#\/components\/parameters\/knowledge-base-id"},{"$ref":"#\/components\/parameters\/data-import-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/voicemails\/{voicemail_id}:set-view-status":{"post":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"200":{"description":"An updated voicemail resource.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/voicemail"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Set voicemail view status","parameters":[{"$ref":"#\/components\/parameters\/voicemail-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Voicemail"],"operationId":"SetVoicemailViewStatus","description":"Marks non-deleted voicemail as read or unread.","requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/set-voicemail-view-status-command"}}}}}},"\/users\/{user_id}\/call-recording-settings":{"get":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"200":{"description":"User's call recording settings.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/user-call-recording-settings"}}}},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"Get user call recording settings","parameters":[{"$ref":"#\/components\/parameters\/user-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"description":"Gets the user's call recording settings. * `regular` users can only access their own settings. * `admin` users can access any user's settings in their net2phone account.","operationId":"GetUserCallRecordingSettings","tags":["Call Recording"]},"put":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"200":{"description":"The update user's call recording settings.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/user-call-recording-settings"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Call Recording"],"summary":"Update user call recording settings","parameters":[{"$ref":"#\/components\/parameters\/user-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"x-n2p-throttlingQuota":1,"operationId":"UpdateUserCallRecordingSettings","description":"Update the user's call recording settings. * `admin` users can update any user's settings within their net2phone account. * `regular` users are not allowed to access this API by default, but can update only their own settings if the account policy lets them to.","requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/user-call-recording-settings"}}}}}},"\/click-to-calls":{"post":{"description":"Initiate a click-to-call flow. Two actual calls are placed:\n- The first call is usually a \"call to yourself\", so that a phone belonging to the user making the API request will ring.\n- The second call is made when the first one is answered. Typically this call would be to an external phone number. When it is answered, the calls are bridged.","responses":{"400":{"$ref":"#\/components\/responses\/bad-request-error"},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"202":{"description":"The click-to-call request was accepted for processing. You can monitor it's status by subscribing to call-related webhook events and matching events by `c2c_api_request_id` to the `id` returned in the response body.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/click-to-call"}}}}},"x-n2p-throttlingQuota":1,"summary":"Create click to call","x-n2p-accountBackendTypes":["unite","unite3"],"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"operationId":"CreateClickToCall","tags":["Click-to-Call"],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-click-to-call-command"}}}}}},"\/sip-trunk-accounts\/{sip_trunk_account_id}\/call-detail-records:search":{"post":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"402":{"$ref":"#\/components\/responses\/feature-unavailable-error"},"200":{"description":"Page of call detail records.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/cursor-page-of-sip-trunk-call-detail-record"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"x-n2p-internal":false,"parameters":[{"$ref":"#\/components\/parameters\/sip-trunk-account-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["SIP Trunking"],"operationId":"SearchSipTrunkCallDetailRecords","description":"Search all call detail records of the SIP trunk account, sorted from the newest to oldest by `start_time` by default.\nThis API is only available if SIP Trunking feature is enabled for the organization,and the user has SIP Trunk Administrator permissions.","summary":"Search sip trunk call detail records","requestBody":{"required":false,"content":{"application\/json":{"examples":{"CallsFromOrToPhoneNumberPartial":{"$ref":"#\/components\/examples\/sip-trunk-search-calls-with-to-or-from-number-partial"},"CallsOrderAscending":{"$ref":"#\/components\/examples\/sip-trunk-search-calls-order-ascending"},"CallsBetweenTwoDates":{"$ref":"#\/components\/examples\/sip-trunk-search-calls-between-two-dates"}},"schema":{"$ref":"#\/components\/schemas\/search-sip-trunk-call-detail-records-command"}}}}}},"\/virtual-agent\/voice-languages":{"get":{"summary":"List virtual agent voice languages","description":"List the supported voice languages.","x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"200":{"description":"List of supported voice languages.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"type":"object","properties":{"voice_languages":{"items":{"$ref":"#\/components\/schemas\/voice-language"},"type":"array"}}}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"tags":["Virtual Agent"],"operationId":"ListVirtualAgentVoiceLanguages","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/virtual-agent\/models":{"get":{"summary":"List virtual agent models","description":"List the available Virtual Agent models.","x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"200":{"description":"List of models.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"type":"object","properties":{"models":{"items":{"$ref":"#\/components\/schemas\/model"},"type":"array"}}}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"tags":["Virtual Agent"],"operationId":"ListVirtualAgentModels","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/voicemails\/{voicemail_id}:generate-audio-download-link":{"get":{"description":"Generate a temporary voicemail download link. This is only available if the voicemail is not yet deleted. Optionally, you can make it redirect to the download link, by omitting or using any non-JSON content type in the `Accept` header.","responses":{"200":{"description":"The voicemail audio download link object. Returned if a JSON content type is requested via the `Accept` header.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/download-link"}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"302":{"description":"Redirect to the voicemail audio file. Returned if a non-JSON content type is requested.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"Location":{"description":"Temporary voicemail audio URL.","schema":{"example":"https:\/\/mediastorage.n2p.io\/unitevmail\/1\/1\/1\/a\/vmmsg_us100000_10000000_g711.wav?token=abc123","type":"string","minLength":1}},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}}},"x-n2p-throttlingQuota":1,"summary":"Generate voicemail audio download link","parameters":[{"$ref":"#\/components\/parameters\/voicemail-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"GenerateVoicemailAudioDownloadLink","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Voicemail"]}},"\/direct-user-conversations\/{direct_user_conversation_id}\/items":{"post":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"402":{"$ref":"#\/components\/responses\/feature-unavailable-error"},"200":{"description":"New direct user conversation item.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/direct-user-conversation-item"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Direct user conversation create item","parameters":[{"$ref":"#\/components\/parameters\/direct-user-conversation-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Direct User Conversation"],"operationId":"DirectUserConversationCreateItem","description":"Create a new message in direct user conversation. If conversation does not exist, a new conversation will be created.","requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/direct-user-conversation-create-item-command"}}}}}},"\/virtual-agent\/virtual-agents\/{virtual_agent_id}\/voice-conversation-templates\/{voice_conversation_template_id}":{"get":{"description":"Get the specified Voice Conversation Template from a Virtual Agent.","responses":{"200":{"description":"Voice Conversation Template object.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/voice-conversation-template-response"}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"GetVirtualAgentVoiceConversationTemplate","summary":"Get virtual agent voice conversation template","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"},{"$ref":"#\/components\/parameters\/voice-conversation-template-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]},"put":{"description":"Updates an existing Virtual Agent's Voice Conversation Template.","responses":{"201":{"description":"The Voice Conversation Template was successfully updated.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/voice-conversation-template"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Update virtual agent voice conversation template","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"},{"$ref":"#\/components\/parameters\/voice-conversation-template-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"UpdateVirtualAgentVoiceConversationTemplate","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/update-voice-conversation-template-command"}},"multipart\/form-data":{"schema":{"type":"object","properties":{"request":{"$ref":"#\/components\/schemas\/update-voice-conversation-template-command"},"background_audio":{"type":"string","format":"binary"}}}}}}},"delete":{"description":"Delete the specified Virtual Agent's Voice Conversation Template.","responses":{"204":{"description":"The Voice Conversation Template was successfully deleted.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"DeleteVirtualAgentVoiceConversationTemplate","summary":"Delete virtual agent voice conversation template","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"},{"$ref":"#\/components\/parameters\/voice-conversation-template-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/virtual-agent\/usage\/overage":{"put":{"description":"Enable or disable overage usage for a Virtual Agent account. When overage is enabled, the account is allowed to continue using services beyond its allocated limits and incur additional charges. When disabled, usage will be restricted once limits are reached.","responses":{"204":{"description":"The overage was successfully toggled.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"operationId":"ToggleVirtualAgentOverage","summary":"Toggle virtual agent overage","x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/toggle-overage-command"}}}}}},"\/virtual-agent\/virtual-agents\/{virtual_agent_id}\/tools\/{tool_id}":{"delete":{"description":"Revoke existing access from this Virtual Agent to a Tool.","responses":{"204":{"description":"Access was revoked successfully.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"DeleteToolFromVirtualAgentHandler","summary":"Delete tool from virtual agent handler","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"},{"$ref":"#\/components\/parameters\/tool-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/virtual-agent\/phone-numbers":{"get":{"summary":"List virtual agent phone numbers","description":"List phone numbers for Virtual Agent usage.","x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"200":{"description":"List of phone numbers.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"type":"object","properties":{"phone_numbers":{"items":{"$ref":"#\/components\/schemas\/phone-number"},"type":"array"}}}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"tags":["Virtual Agent"],"operationId":"ListVirtualAgentPhoneNumbers","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/messaging-enabled-phone-numbers:set-route":{"post":{"description":"Change the messaging enabled phone number route. Only accessible for admin users.","responses":{"201":{"description":"Updated messaging enabled phone number.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Set messaging enabled phone number route","x-n2p-accountBackendTypes":["unite","unite3"],"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"operationId":"SetMessagingEnabledPhoneNumberRoute","tags":["Messaging Enabled Phone Number"],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/set-messaging-enabled-phone-number-route-command"}}}}}},"\/call-queues\/{call_queue_id}\/statistics":{"get":{"description":"Get call queue statistics.","responses":{"200":{"description":"Call queue statistics.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/call-queue-statistics"}}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"Get call queue statistics","parameters":[{"$ref":"#\/components\/parameters\/call-queue-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"GetCallQueueStatistics","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Call Queue"]}},"\/phone-number-bound-conversations\/{phone_number_bound_conversation_id}\/items":{"post":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"402":{"$ref":"#\/components\/responses\/feature-unavailable-error"},"200":{"description":"New phone number bound conversation item.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-message"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"409":{"$ref":"#\/components\/responses\/phone-number-bound-conversation-create-item-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Phone number bound conversation create item","parameters":[{"$ref":"#\/components\/parameters\/phone-number-bound-conversation-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Phone Number Bound Conversation"],"operationId":"PhoneNumberBoundConversationCreateItem","description":"...","requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-create-item-command"}}}}}},"\/huddle-dial-in-phone-numbers":{"get":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"402":{"$ref":"#\/components\/responses\/feature-unavailable-error"},"200":{"description":"Page of phone numbers to use for huddle dial-in.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/cursor-page-of-huddle-dial-in-phone-number"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"List huddle dial in phone numbers","parameters":[{"$ref":"#\/components\/parameters\/limit"},{"$ref":"#\/components\/parameters\/before"},{"$ref":"#\/components\/parameters\/after"},{"description":"The list of region codes to include. Use special value of `@request_region_code` to include auto-detected region.","schema":{"items":{"$ref":"#\/components\/schemas\/region-code-filter-value"},"type":"array","minItems":1,"maxItems":100},"required":false,"name":"region_codes","in":"query","examples":{"CurrentAutoDetectedRegion":{"summary":"Include phone numbers for the auto-detected region.","value":["@request_region_code"]},"MultipleRegions":{"summary":"Include phone numbers for United States and Brazil only.","value":["US","BR"]}}}],"x-n2p-accountBackendTypes":["unite","unite3"],"description":"List available phone numbers to dial Huddle conference rooms.","operationId":"ListHuddleDialInPhoneNumbers","tags":["Huddle Dial In Phone Number"]}},"\/channel-conversations\/{channel_conversation_id}\/items":{"post":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"402":{"$ref":"#\/components\/responses\/feature-unavailable-error"},"200":{"description":"New channel conversation item.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/channel-conversation-item"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Channel conversation create item","parameters":[{"$ref":"#\/components\/parameters\/channel-conversation-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Channel Conversation"],"operationId":"ChannelConversationCreateItem","description":"Create a new message in channel conversation.","requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/channel-conversation-create-item-command"}}}}}},"\/virtual-agent\/phone-numbers\/{phone_number_id}\/messaging-assignment":{"post":{"description":"Sets the Messaging Assignment of a phone number.","responses":{"200":{"description":"The Messaging Assignment was successfully set.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/messaging-assignment"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"409":{"$ref":"#\/components\/responses\/conflict-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"}},"tags":["Virtual Agent"],"summary":"Set virtual agent messaging assignment","parameters":[{"$ref":"#\/components\/parameters\/phone-number-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"SetVirtualAgentMessagingAssignment","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/set-messaging-assignment-command"}}}}},"delete":{"description":"Clear the Messaging Assignment currently assigned to this phone number.","responses":{"204":{"description":"Messaging Assignment was successfully cleared.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"ClearVirtualAgentMessagingAssignment","summary":"Clear virtual agent messaging assignment","parameters":[{"$ref":"#\/components\/parameters\/phone-number-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/virtual-agent\/phone-numbers\/{phone_number_id}":{"get":{"description":"Get details of specified phone number.","responses":{"200":{"description":"Phone number object.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/phone-number"}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"GetVirtualAgentPhoneNumber","summary":"Get virtual agent phone number","parameters":[{"$ref":"#\/components\/parameters\/phone-number-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/call-queues\/{call_queue_id}\/agents-report":{"post":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"200":{"description":"Generated call queue agents report.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/collection-of-call-queue-agent-reports"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Build call queue agents report","parameters":[{"$ref":"#\/components\/parameters\/call-queue-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Call Queue"],"operationId":"BuildCallQueueAgentsReport","description":"Generates and returns a report for call queue agents.","requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/build-call-queue-agents-report-command"}}}}}},"\/virtual-agent\/usage":{"get":{"summary":"Get virtual agent current usage","description":"Get current usage.","x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"200":{"description":"The current usage information.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/current-usage"}}}},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"tags":["Virtual Agent"],"operationId":"GetVirtualAgentCurrentUsage","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/webhook-event-types":{"get":{"description":"List the supported event types available to the current user based on their platform access.","responses":{"200":{"description":"Collection of webhook event types.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"examples":{"Default":{"summary":"List of supported webhook event types.","value":{"items":[{"display_name":"Call Ringing","platform":"pbx","id":"call_ringing"}]}}},"schema":{"$ref":"#\/components\/schemas\/collection-of-webhook-event-type"}}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"List webhook event types","x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"ListWebhookEventTypes","tags":["Webhook Subscription"],"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}]}},"\/virtual-agent\/background-audio\/default":{"get":{"summary":"Get default background audio","description":"Get the default background audio used in Voice Conversation Templates.","x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"200":{"description":"The default background audio in WAV format.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"audio\/wav":{"schema":{"type":"string","format":"binary"}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"tags":["Virtual Agent"],"operationId":"GetDefaultBackgroundAudio","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/webhook-platforms":{"get":{"description":"List the webhook platforms available to the current user based on their account access.","responses":{"200":{"description":"Collection of webhook platforms available to the user.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"examples":{"PbxOnly":{"summary":"User with PBX access only.","value":{"items":["pbx"]}}},"schema":{"$ref":"#\/components\/schemas\/collection-of-webhook-platform"}}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"List webhook platforms","x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"ListWebhookPlatforms","tags":["Webhook Subscription"],"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}]}},"\/virtual-agent\/phone-numbers\/{phone_number_id}\/voice-conversation-template-assignment":{"post":{"description":"Sets the Voice Conversation Template of a phone number.","responses":{"200":{"description":"The Voice Conversation Template was successfully set.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/voice-conversation-template-assignment"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"409":{"$ref":"#\/components\/responses\/conflict-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"}},"tags":["Virtual Agent"],"summary":"Set voice conversation template","parameters":[{"$ref":"#\/components\/parameters\/phone-number-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"SetVoiceConversationTemplate","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/set-voice-conversation-template-command"}}}}},"delete":{"description":"Clear the Voice Conversation Template currently assigned to this phone number.","responses":{"204":{"description":"Voice Conversation Template assignment was successfully cleared.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"409":{"$ref":"#\/components\/responses\/knowledge-base-delete-error"}},"operationId":"ClearVoiceConversationTemplate","summary":"Clear voice conversation template","parameters":[{"$ref":"#\/components\/parameters\/phone-number-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/virtual-agent\/mcp-servers":{"post":{"description":"Creates a new MCP Server.","responses":{"201":{"description":"The MCP Server was successfully created.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/mcp-server"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"409":{"$ref":"#\/components\/responses\/mcp-server-create-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"operationId":"CreateMCPServer","summary":"Create mcp server","x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-mcp-server-command"}}}}},"get":{"summary":"List mcp servers","description":"List the MCP Servers.","x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"200":{"description":"List of MCP Servers.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"type":"object","properties":{"mcp_servers":{"items":{"$ref":"#\/components\/schemas\/mcp-server"},"type":"array"}}}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"tags":["Virtual Agent"],"operationId":"ListMCPServers","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/phone-number-bound-conversations\/{phone_number_bound_conversation_id}:move-over-workflow":{"post":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"403":{"$ref":"#\/components\/responses\/forbidden-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"409":{"$ref":"#\/components\/responses\/conflict-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"402":{"$ref":"#\/components\/responses\/feature-unavailable-error"},"200":{"description":"Updated phone number bound conversation.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-reference"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Phone number bound conversation move over workflow","parameters":[{"$ref":"#\/components\/parameters\/phone-number-bound-conversation-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Phone Number Bound Conversation"],"operationId":"PhoneNumberBoundConversationMoveOverWorkflow","description":"Moves the current conversation to a new state within the specified workflow, based on the chosen action.\nPossible actions: 'assign', 'claim', 'complete', 'transfer', 'accept_transfer', 'decline_transfer', 'cancel_transfer', and 'unassign'.","requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-command"}}}}}},"\/extension-presences":{"get":{"description":"Lists the presence status of all the extensions that are accessible for the current user ordered by descending `extension` number. `Admin` users will have access to all user's extensions within their net2phone account including special extensions. `Regular` users will have access to their extension.","responses":{"200":{"description":"The list of `ExtensionPresence` entities.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/cursor-page-of-extension-presence"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"List extension presences","parameters":[{"$ref":"#\/components\/parameters\/extension-presence-status"},{"$ref":"#\/components\/parameters\/extension-filter-value"},{"$ref":"#\/components\/parameters\/presence-owner-id-filter-value"},{"$ref":"#\/components\/parameters\/limit"},{"$ref":"#\/components\/parameters\/before"},{"$ref":"#\/components\/parameters\/after"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"ListExtensionPresences","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Extension Presence"]}},"\/anonymous-callers-blocking-settings":{"get":{"description":"Gets the status whether all the incoming calls from anonymous callers are blocked.","responses":{"429":{"$ref":"#\/components\/responses\/throttling-error"},"200":{"description":"The anonymous callers blocking settings applied to the current user.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/anonymous-callers-blocking-settings"}}}},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"Get anonymous callers blocking settings","x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"GetAnonymousCallersBlockingSettings","tags":["Blocked Callers"],"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}]}},"\/virtual-agent\/limits":{"get":{"summary":"Get virtual agent limits","description":"Get the limits for configuring Virtual Agents.","x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"200":{"description":"The limits of Virtual Agents configuration.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/limits"}}}},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"tags":["Virtual Agent"],"operationId":"GetVirtualAgentLimits","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/anonymous-callers-blocking-settings:set-for-current-user":{"put":{"description":"Sets the status whether to block all incoming calls from anonymous callers for current user. Users can not turn off this setting if enabled by `admin` for all the users. This API is only accessible to `regular` users.","responses":{"200":{"description":"Anonymous callers blocking settings with the updated `block_level`.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/anonymous-callers-blocking-settings"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Set anonymous callers blocking settings for current user","x-n2p-accountBackendTypes":["unite","unite3"],"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"operationId":"SetAnonymousCallersBlockingSettingsForCurrentUser","tags":["Blocked Callers"],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/set-anonymous-callers-blocking-settings-for-current-user-command"}}}}}},"\/virtual-agent\/knowledge-bases\/{knowledge_base_id}\/data-sources:batch-delete":{"post":{"description":"Deletes many Data Sources from a Knowledge Base.","responses":{"204":{"description":"The Data Sources were successfully created.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Batch delete knowledge base data sources","parameters":[{"$ref":"#\/components\/parameters\/knowledge-base-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"BatchDeleteKnowledgeBaseDataSources","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"properties":{"ids":{"description":"Array of Data Source IDs that should be deleted.","type":"array","minItems":1,"maxItems":100,"uniqueItems":true,"items":{"type":"string"}}}}}}}}},"\/virtual-agent\/mcp-servers\/{mcp_server_id}\/tool-configurations\/{tool_name}":{"get":{"description":"Get the specified Tool Configuration from a MCP Server.","responses":{"200":{"description":"Tool Configuration object.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/mcp-tool-configuration"}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"GetMCPServerToolConfiguration","summary":"Get mcp server tool configuration","parameters":[{"$ref":"#\/components\/parameters\/mcp-server-id"},{"$ref":"#\/components\/parameters\/mcp-tool-configuration-tool-name"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]},"put":{"description":"Updates an existing MCP Server's Tool Configuration.","responses":{"201":{"description":"The Tool Configuration was successfully updated.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/mcp-tool-configuration"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Update mcp server tool configuration","parameters":[{"$ref":"#\/components\/parameters\/mcp-server-id"},{"$ref":"#\/components\/parameters\/mcp-tool-configuration-tool-name"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"UpdateMCPServerToolConfiguration","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/update-mcp-tool-configuration-command"}}}}},"delete":{"description":"Delete the specified MCP Server's Tool Configuration.","responses":{"204":{"description":"The Tool Configuration was successfully deleted.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"DeleteMCPServerToolConfiguration","summary":"Delete mcp server tool configuration","parameters":[{"$ref":"#\/components\/parameters\/mcp-server-id"},{"$ref":"#\/components\/parameters\/mcp-tool-configuration-tool-name"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/anonymous-callers-blocking-settings:set-for-everyone":{"put":{"description":"Sets the status whether to block all incoming calls from anonymous callers at `account` level. This API is only accessible to `admin` users.","responses":{"200":{"description":"Anonymous callers blocking settings with the updated `block_level`.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/anonymous-callers-blocking-settings"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Set anonymous callers blocking settings for account","x-n2p-accountBackendTypes":["unite","unite3"],"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"operationId":"SetAnonymousCallersBlockingSettingsForAccount","tags":["Blocked Callers"],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/set-anonymous-callers-blocking-settings-for-account-command"}}}}}},"\/virtual-agent\/knowledge-bases":{"post":{"description":"Creates a new empty Knowledge Base.","responses":{"201":{"description":"The Knowledge Base was successfully created.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/knowledge-base"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"operationId":"CreateKnowledgeBase","summary":"Create knowledge base","x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-knowledge-base-command"}}}}},"get":{"summary":"List knowledge bases","description":"List the Knowledge Bases.","x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"200":{"description":"List of Knowledge Bases.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"type":"object","properties":{"knowledge_bases":{"items":{"$ref":"#\/components\/schemas\/knowledge-base"},"type":"array"}}}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"tags":["Virtual Agent"],"operationId":"ListKnowledgeBases","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/virtual-agent\/virtual-agents\/{virtual_agent_id}\/voice-conversation-templates\/{voice_conversation_template_id}\/background-audio":{"get":{"description":"Get the specified Voice Conversation Template's background audio.","responses":{"204":{"description":"The Voice Conversation Template does not have any background audio set.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"200":{"description":"Voice Conversation Template's background audio in WAV format.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"audio\/wav":{"schema":{"type":"string","format":"binary"}}}}},"operationId":"GetVirtualAgentVoiceConversationTemplateBackgroundAudio","summary":"Get virtual agent voice conversation template background audio","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"},{"$ref":"#\/components\/parameters\/voice-conversation-template-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/blocked-callers":{"get":{"description":"Lists the blocked callers within the net2phone account. The list has all the callers blocked at `account` level and those blocked at `user` level by the current user ordered by `created_at_time` descending.","responses":{"200":{"description":"The cursor page of blocked callers.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/cursor-page-of-blocked-caller"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"List blocked callers","parameters":[{"$ref":"#\/components\/parameters\/before"},{"$ref":"#\/components\/parameters\/after"},{"$ref":"#\/components\/parameters\/limit"},{"$ref":"#\/components\/parameters\/blocked-caller-search-query"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"ListBlockedCallers","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Blocked Callers"]},"post":{"description":"Adds a caller to the blocked callers list. Only `admin` users can add a caller to the `account` level list. Returns `number_already_exist_error` if the `phone_number_pattern` in the request already exist in the current user's list or at `account` level list.","responses":{"201":{"description":"The Blocked Caller added to the blocking list.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/blocked-caller"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"409":{"$ref":"#\/components\/responses\/blocked-callers-conflict-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Create blocked caller","x-n2p-accountBackendTypes":["unite","unite3"],"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"operationId":"CreateBlockedCaller","tags":["Blocked Callers"],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-blocked-caller-command"}}}}}},"\/messaging-enabled-phone-numbers":{"get":{"description":"Lists messaging-enabled phone numbers.\nBy default, returns phone numbers where the current user has messaging access (`current_user_access=messaging_allowed`).\nYou can filter by multiple access levels by providing multiple values (e.g., `current_user_access=messaging_allowed,reference_only`).","responses":{"200":{"description":"A list of messaging-enabled phone numbers filtered by the requested access levels.\nBy default, only numbers with `current_user_access=messaging_allowed` are returned.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-numbers"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"List messaging enabled phone numbers","parameters":[{"$ref":"#\/components\/parameters\/messaging-enabled-phone-number-current-user-access"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"ListMessagingEnabledPhoneNumbers","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Messaging Enabled Phone Number"]}},"\/call-detail-records:search":{"post":{"description":"Search all call detail records accessible to the user making the request, sorted from the newest to oldest by `created_at_time`.\n`Admin` users can get all calls within their net2phone account.\n`Regular` users can get calls they participated in and also calls to the departments they belong to. For example, all of these calls\nwill be visible:\n- Direct calls to that specific `Regular` user.\n- Calls to ring groups or welcome menus answered by this `Regular` user.\n- Unanswered calls where the `Regular` user's voicemail inbox was used as a fallback.\n- Calls to a department if the `Regular` user is a member.","responses":{"200":{"description":"Page of call detail records.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/cursor-page-of-call-detail-record"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Search call detail records","x-n2p-accountBackendTypes":["unite","unite3"],"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"operationId":"SearchCallDetailRecords","tags":["Call Detail Record"],"requestBody":{"required":false,"content":{"application\/json":{"examples":{"AnsweredCalls":{"$ref":"#\/components\/examples\/search-answered-calls"},"CallsToSpecificDepartment":{"$ref":"#\/components\/examples\/search-calls-to-department"},"CallsToSpecificCallQueue":{"$ref":"#\/components\/examples\/search-calls-to-call-queue"},"CallsMadeByMe":{"$ref":"#\/components\/examples\/search-calls-made-by-me"},"CallsToMyDepartments":{"$ref":"#\/components\/examples\/search-calls-to-my-departments"},"CallsFromOrToPhoneNumberStartsWith":{"$ref":"#\/components\/examples\/search-calls-from-or-to-phone-number-starts-with"},"CallsFromOrToPhoneNumberContainsSubstring":{"$ref":"#\/components\/examples\/search-calls-from-or-to-phone-number-contains-substring"},"CallsWithAvailableVoicemailAudio":{"$ref":"#\/components\/examples\/search-calls-with-voicemail-audio"},"CallsWithNonDeletedVoicemailsByUser":{"$ref":"#\/components\/examples\/search-non-deleted-voicemails-by-user"},"CallsWithUnreadVoicemails":{"$ref":"#\/components\/examples\/search-unread-voicemails"},"CallsMissedBySpecificUser":{"$ref":"#\/components\/examples\/search-missed-calls-by-specific-user"},"CallsBySpecificUsersAndDepartments":{"$ref":"#\/components\/examples\/search-calls-by-specific-users-and-departments"},"CallsFromNormalizedOrToNormalizedPhoneNumberContainsSubstring":{"$ref":"#\/components\/examples\/search-calls-from-normalized-or-to-normalized-phone-number-contains-substring"},"CallsWithAvailableCallRecordings":{"$ref":"#\/components\/examples\/search-calls-with-call-recordings"},"CallsWithNonDeletedVoicemailsByUserWithOwners":{"$ref":"#\/components\/examples\/search-non-deleted-voicemails-by-owner-user"},"CallsWithNonDeletedCallRecordingsByUser":{"$ref":"#\/components\/examples\/search-non-deleted-call-recordings-by-user"},"CallsBySpecificUsers":{"$ref":"#\/components\/examples\/search-calls-by-specific-users"},"CallsWithUnreadCallRecordings":{"$ref":"#\/components\/examples\/search-unread-call-recordings"},"CallsBySpecificDepartments":{"$ref":"#\/components\/examples\/search-calls-by-specific-departments"},"OutboundCalls":{"$ref":"#\/components\/examples\/search-outbound-calls"},"CallsWithVoicemailsToUserOrSelectedDepartments":{"$ref":"#\/components\/examples\/search-voicemails-by-user-or-departments"},"CallsBetweenSpecificUsers":{"$ref":"#\/components\/examples\/search-calls-between-specific-users"}},"schema":{"$ref":"#\/components\/schemas\/search-call-detail-records-command"}}}}}},"\/virtual-agent\/knowledge-bases\/{knowledge_base_id}\/data-sources\/{data_source_id}":{"put":{"description":"Updates the specified Knowledge Base Data Source.","responses":{"200":{"description":"The Data Source was successfully updated.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/data-source"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Update knowledge base data source","parameters":[{"$ref":"#\/components\/parameters\/knowledge-base-id"},{"$ref":"#\/components\/parameters\/data-source-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"UpdateKnowledgeBaseDataSource","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"properties":{"content":{"type":"string"}}}}}}},"get":{"description":"Get the specified Data Source from a Knowledge Base.","responses":{"200":{"description":"Data Source object.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/data-source"}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"GetKnowledgeBaseDataSource","summary":"Get knowledge base data source","parameters":[{"$ref":"#\/components\/parameters\/knowledge-base-id"},{"$ref":"#\/components\/parameters\/data-source-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/virtual-agent\/virtual-agents\/{virtual_agent_id}":{"get":{"description":"Get details of specified Virtual Agent.","responses":{"200":{"description":"Virtual Agent object.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/virtual-agent"}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"GetVirtualAgent","summary":"Get virtual agent","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]},"put":{"description":"Updates an existing Virtual Agent.","responses":{"201":{"description":"The Virtual Agent was successfully updated.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/virtual-agent"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Update virtual agent","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"UpdateVirtualAgent","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/update-virtual-agent-command"}}}}},"delete":{"description":"Delete the specified Virtual Agent.","responses":{"204":{"description":"Virtual Agent was deleted successfully.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"DeleteVirtualAgent","summary":"Delete virtual agent","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/campaign-registry-campaigns\/{campaign_registry_campaign_id}\/sharing-rejection-reasons":{"get":{"description":"List sharing rejection reasons for the given campaign. This operation returns detailed reasons why campaign wasn't shared by The Campaign Registry. If the sharing completed successfully, an empty collection will be returned.","responses":{"200":{"description":"Campaign sharing rejection reasons. Returns an empty collection for a 'shared' campaign.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/collection-of-campaign-registry-campaign-sharing-rejection-reason"}}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"List campaign registry campaign sharing rejection reasons","parameters":[{"$ref":"#\/components\/parameters\/campaign-registry-campaign-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"ListCampaignRegistryCampaignSharingRejectionReasons","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Messaging Campaign Registry"]}},"\/virtual-agent\/conversations":{"post":{"description":"Creates a new chat conversation to interact with a Virtual Agent.","responses":{"201":{"description":"The conversation was successfully created.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/conversation"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"operationId":"CreateConversation","summary":"Create conversation","x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-conversation-command"}}}}}},"\/messaging-enabled-phone-numbers\/-\/agent-activity-report":{"get":{"description":"Generates a time-series report of agent performance. Supports filtering by multiple phone numbers and agent IDs. The report density is controlled by the interval_size parameter, and all time buckets are aligned with the iana_timezone_id.","responses":{"402":{"$ref":"#\/components\/responses\/feature-unavailable-error"},"200":{"description":"Success. Returns an object containing the aggregated time-series data and metadata for the requested report.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/collection-of-agent-activity-report"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"Get messaging enabled phone numbers agent activity report","parameters":[{"$ref":"#\/components\/parameters\/start-date"},{"$ref":"#\/components\/parameters\/end-date"},{"$ref":"#\/components\/parameters\/interval-size"},{"$ref":"#\/components\/parameters\/agent-ids"},{"$ref":"#\/components\/parameters\/internal-phone-numbers"},{"$ref":"#\/components\/parameters\/iana-timezone-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"GetMessagingEnabledPhoneNumbersAgentActivityReport","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Messaging Enabled Phone Number"]}},"\/direct-group-conversations\/{direct_group_conversation_id}\/items":{"post":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"402":{"$ref":"#\/components\/responses\/feature-unavailable-error"},"200":{"description":"New direct group conversation item.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/direct-group-conversation-item"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Direct group conversation create item","parameters":[{"$ref":"#\/components\/parameters\/direct-group-conversation-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Direct Group Conversation"],"operationId":"DirectGroupConversationCreateItem","description":"Create a new message in direct group conversation. If conversation does not exist, a new conversation will be created.","requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/direct-group-conversation-create-item-command"}}}}}},"\/virtual-agent\/mcp-servers\/tools:preview":{"post":{"description":"Tests connection to an MCP server and returns available tools without saving the server. Used for preview before creating an MCP server. Supports pagination via cursor.","responses":{"200":{"description":"The preview of the MCP server tools.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/mcp-server-tools-response"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"operationId":"PreviewMCPServerTools","summary":"Preview mcp server tools","x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/preview-mcp-server-tools-command"}}}}}},"\/virtual-agent\/conversations:export":{"get":{"description":"Exports conversations as a CSV file for the given date range.","responses":{"200":{"description":"CSV file download.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"text\/csv":{"schema":{"type":"string","format":"binary"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"ExportConversations","summary":"Export conversations","parameters":[{"description":"Start of date range (inclusive).","schema":{"example":"2022-06-01T07:20:00Z","type":"string","format":"date-time"},"required":true,"name":"start_time","in":"query"},{"description":"End of date range (inclusive).","schema":{"example":"2022-06-01T07:35:00Z","type":"string","format":"date-time"},"required":true,"name":"end_time","in":"query"},{"description":"Filter by Virtual Agent ID.","schema":{"$ref":"#\/components\/schemas\/string-id"},"name":"virtual_agent_id","in":"query"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/virtual-agent\/knowledge-bases\/{knowledge_base_id}":{"get":{"description":"Get details of specified Knowledge Base.","responses":{"200":{"description":"Knowledge Base object.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/knowledge-base"}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"GetKnowledgeBase","summary":"Get knowledge base","parameters":[{"$ref":"#\/components\/parameters\/knowledge-base-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]},"put":{"description":"Updates the specified Knowledge Base.","responses":{"200":{"description":"The Knowledge Base was successfully updated.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/knowledge-base"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Update knowledge base","parameters":[{"$ref":"#\/components\/parameters\/knowledge-base-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"UpdateKnowledgeBase","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"properties":{"display_name":{"$ref":"#\/components\/schemas\/knowledge-base-display-name"},"description":{"$ref":"#\/components\/schemas\/knowledge-base-description"}}}}}}},"delete":{"description":"Delete the specified Knowledge Base.","responses":{"204":{"description":"Knowledge Base was deleted successfully.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"422":{"$ref":"#\/components\/responses\/not-supported-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"409":{"$ref":"#\/components\/responses\/knowledge-base-delete-error"}},"operationId":"DeleteKnowledgeBase","summary":"Delete knowledge base","parameters":[{"$ref":"#\/components\/parameters\/knowledge-base-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/porting\/port-out-requests":{"post":{"description":"Records a customer request to port phone numbers of the current account away from net2phone. Keeps the port reason and timeframe together with the optional feedback, opens a retention case for the account and returns the port-out PIN of every requested phone number. A phone number whose PIN cannot be retrieved automatically is returned with `pin` set to `null`; the support team follows up on those.","responses":{"201":{"description":"The recorded port-out request.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/port-out-request"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Create port out request","x-n2p-accountBackendTypes":["unite","unite3"],"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"operationId":"CreatePortOutRequest","tags":["Port Out"],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-port-out-request-command"}}}}}},"\/call-queues\/{call_queue_id}\/queue-report":{"post":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"200":{"description":"Generated call queue report.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/collection-of-call-queue-reports"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Build call queue report","parameters":[{"$ref":"#\/components\/parameters\/call-queue-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Call Queue"],"operationId":"BuildCallQueueReport","description":"Generates and returns a report for call queue.","requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/build-call-queue-report-command"}}}}}},"\/virtual-agent\/virtual-agents":{"post":{"description":"Creates a new Virtual Agent.","responses":{"201":{"description":"The Virtual Agent was successfully created.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/virtual-agent"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"409":{"$ref":"#\/components\/responses\/virtual-agent-create-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"operationId":"CreateVirtualAgent","summary":"Create virtual agent","x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-virtual-agent-command"}}}}},"get":{"summary":"List virtual agents","description":"List the Virtual Agents.","x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"200":{"description":"List of Virtual Agents.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"type":"object","properties":{"virtual_agents":{"items":{"$ref":"#\/components\/schemas\/virtual-agent"},"type":"array"}}}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"tags":["Virtual Agent"],"operationId":"ListVirtualAgents","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/huddle-rooms":{"post":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"402":{"$ref":"#\/components\/responses\/feature-unavailable-error"},"201":{"description":"The Huddle room was successfully created.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/huddle-room"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"409":{"description":"The user already has a non-expiring room with the same name.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/huddle-room-display-name-uniqueness-error"}}}},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Create huddle room","x-n2p-accountBackendTypes":["unite","unite3"],"description":"Creates a new Huddle room.","tags":["Huddle Room"],"operationId":"CreateHuddleRoom","requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-huddle-room-command"}}}}}},"\/virtual-agent\/tools":{"post":{"description":"Creates a new Tool.","responses":{"201":{"description":"The tool was successfully created.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/tool"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"operationId":"CreateTool","summary":"Create tool","x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-tool-command"}}}}},"get":{"summary":"List tools","description":"List the Tools.","x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"200":{"description":"List of tools.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"type":"object","properties":{"tools":{"items":{"$ref":"#\/components\/schemas\/tool"},"type":"array"}}}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"tags":["Virtual Agent"],"operationId":"ListTools","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/virtual-agent\/virtual-agents\/{virtual_agent_id}\/pbx-directory-configuration":{"put":{"description":"Updates the current PBX directory configuration for the Agent.","responses":{"200":{"description":"The PBX directory configuration was successfully updated.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/pbx-directory-configuration"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"409":{"$ref":"#\/components\/responses\/pbx-directory-configuration-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"}},"tags":["Virtual Agent"],"summary":"Update virtual agent pbx directory configuration","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"UpdateVirtualAgentPbxDirectoryConfiguration","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/update-pbx-directory-configuration-command"}}}}},"get":{"description":"Returns the current PBX directory configuration for the Agent.","responses":{"200":{"description":"The current PBX directory configuration for the Agent.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/pbx-directory-configuration"}}}},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"GetVirtualAgentPbxDirectoryConfiguration","summary":"Get virtual agent pbx directory configuration","parameters":[{"$ref":"#\/components\/parameters\/virtual-agent-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/messaging-enabled-phone-numbers\/-\/phone-number-activity-report":{"get":{"description":"Generates a time-series report of phone number activity. When filtered by specific phone numbers, the report shows a separate bucket for each number. In the absence of a phone number filter, results are aggregated into a single bucket per interval. The report granularity is controlled by 'interval_size', and all time buckets are aligned with 'iana_timezone_id'.","responses":{"402":{"$ref":"#\/components\/responses\/feature-unavailable-error"},"200":{"description":"Success. Returns an object containing the aggregated time-series data and metadata for the requested report.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/collection-of-phone-number-activity-report"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"Get messaging enabled phone numbers phone number activity report","parameters":[{"$ref":"#\/components\/parameters\/start-date"},{"$ref":"#\/components\/parameters\/end-date"},{"$ref":"#\/components\/parameters\/interval-size"},{"$ref":"#\/components\/parameters\/internal-phone-numbers"},{"$ref":"#\/components\/parameters\/iana-timezone-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"GetMessagingEnabledPhoneNumbersPhoneNumberActivityReport","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Messaging Enabled Phone Number"]}},"\/blocked-callers\/{blocked_caller_id}":{"delete":{"description":"Deletes the specified caller from the blocked list. Only `admin` users can delete callers that are blocked at `account` level. Also, users can not delete entries from other user's (at `user` level) block lists.","responses":{"204":{"description":"The specified blocked caller deleted successfully.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"Delete blocked caller","parameters":[{"$ref":"#\/components\/parameters\/blocked-caller-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"DeleteBlockedCaller","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Blocked Callers"]},"put":{"description":"Updates the specified blocked caller. Only `admin` users can update callers that are blocked at `account` level. Also, `admin` users can not update callers that are blocked at `user` level in other user's context.","responses":{"200":{"description":"The updated Blocked Caller entity.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/blocked-caller"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"x-n2p-throttlingQuota":1,"summary":"Update blocked caller","parameters":[{"$ref":"#\/components\/parameters\/blocked-caller-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Blocked Callers"],"operationId":"UpdateBlockedCaller","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/update-blocked-caller-command"}}}}}},"\/virtual-agent\/mcp-servers\/{mcp_server_id}\/tool-configurations":{"post":{"description":"Creates a new Tool Configuration for an existing MCP Server.","responses":{"201":{"description":"The Tool Configuration was successfully created.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/mcp-tool-configuration"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"400":{"$ref":"#\/components\/responses\/bad-request-error"},"409":{"$ref":"#\/components\/responses\/mcp-server-tool-configuration-create-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"}},"tags":["Virtual Agent"],"summary":"Create mcp server tool configuration","parameters":[{"$ref":"#\/components\/parameters\/mcp-server-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"CreateMCPServerToolConfiguration","security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}],"x-n2p-throttlingQuota":1,"requestBody":{"required":true,"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-mcp-tool-configuration-command"}}}}},"get":{"description":"List a MCP Server's Tool Configurations.","responses":{"200":{"description":"List of Tool Configurations.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"type":"object","properties":{"tool_configurations":{"items":{"$ref":"#\/components\/schemas\/mcp-tool-configuration"},"type":"array"}}}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"operationId":"ListMCPServerToolConfigurations","summary":"List mcp server tool configurations","parameters":[{"$ref":"#\/components\/parameters\/mcp-server-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"tags":["Virtual Agent"],"x-n2p-throttlingQuota":1,"security":[{"n2pOpenIdConnect":[]},{"n2pApiKeyAuth":[]}]}},"\/phone-numbers\/{phone_number_id}":{"delete":{"security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"responses":{"204":{"description":"The specified Phone Number has been deleted from your net2phone account.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"403":{"$ref":"#\/components\/responses\/forbidden-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"404":{"$ref":"#\/components\/responses\/not-found-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"},"409":{"$ref":"#\/components\/responses\/phone-number-conflict-error"}},"tags":["Phone Number"],"summary":"Delete phone number","parameters":[{"$ref":"#\/components\/parameters\/phone-number-id-2"},{"description":"If true, the caller id will be set to their direct phone number for those who used this phone number as caller id. If false and this phone number is found as caller id for any team member, the request will fail.","schema":{"$ref":"#\/components\/schemas\/ignore-if-used-as-caller-id"},"required":false,"name":"ignore_if_used_as_caller_id","in":"query"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"DeletePhoneNumber","description":"Deletes the specified Phone Number from your net2phone account, and the associated callable resources will be left unassigned. Accessible only for admin users. You can not delete a Phone Number when it is assigned to a `User` or a `Special Extension` (of type `five9` or `remote_voicemail`) and the resource has no fallback Phone Number assigned. Also, you can not delete a `Phone Number` if it's assigned to a `Virtual Fax`, you should instead delete the `Virtual Fax` first and then delete the Phone Number.","x-n2p-throttlingQuota":1}},"\/messaging-enabled-phone-numbers\/-\/live-activity-report":{"get":{"description":"Generates a summary report of messaging activity for the current day. Data is aggregated from midnight (00:00:00) to the present moment, aligned with the provided 'iana_timezone_id'.","responses":{"402":{"$ref":"#\/components\/responses\/feature-unavailable-error"},"200":{"description":"Success. Returns an object containing the aggregated data and metadata for the requested report.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/collection-of-live-activity-report"}}}},"422":{"$ref":"#\/components\/responses\/invalid-request-error"},"429":{"$ref":"#\/components\/responses\/throttling-error"},"401":{"$ref":"#\/components\/responses\/authentication-error"}},"x-n2p-throttlingQuota":1,"summary":"Get messaging enabled phone numbers live activity report","parameters":[{"$ref":"#\/components\/parameters\/iana-timezone-id"}],"x-n2p-accountBackendTypes":["unite","unite3"],"operationId":"GetMessagingEnabledPhoneNumbersLiveActivityReport","security":[{"n2pOpenIdConnect":["public_api.v2"]},{"n2pApiKeyAuth":["public_api.v2"]}],"tags":["Messaging Enabled Phone Number"]}}},"components":{"parameters":{"data-import-id":{"description":"The unique ID of a Data Import.","schema":{"$ref":"#\/components\/schemas\/string-id"},"required":true,"name":"data_import_id","in":"path"},"phone-number-bound-conversation-id":{"description":"Unique identifier of the phone number bound conversation.","schema":{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-id"},"required":true,"name":"phone_number_bound_conversation_id","in":"path"},"page-index":{"description":"Page index to start with.","schema":{"type":"integer","default":0,"minimum":0,"format":"int32"},"name":"page_index","in":"query"},"before":{"description":"The opaque cursor to paginate backwards. Cannot be used together with `after`.","schema":{"example":"eyJrIjoiRkM5RDhDQTktRkZCMy00REEzLTg1MEQtNkQ3Nzk5QTMzMTlFIn0=","type":"string"},"name":"before","in":"query"},"sip-trunk-account-id":{"description":"Unique identifier of the SIP trunk account.","schema":{"$ref":"#\/components\/schemas\/sip-trunk-account-id"},"required":true,"name":"sip_trunk_account_id","in":"path"},"conversation-id":{"description":"The unique ID of a Conversation.","schema":{"$ref":"#\/components\/schemas\/string-id"},"required":true,"name":"conversation_id","in":"path"},"mcp-tool-configuration-tool-name":{"description":"The tool name of an existing MCP Server Tool Configuration.","schema":{"$ref":"#\/components\/schemas\/string-id"},"required":true,"name":"tool_name","in":"path"},"limit":{"description":"Number of items per page.","schema":{"$ref":"#\/components\/schemas\/limit"},"name":"limit","in":"query"},"phone-number-id":{"description":"The unique ID of a phone number.","schema":{"$ref":"#\/components\/schemas\/string-id"},"required":true,"name":"phone_number_id","in":"path"},"mcp-server-id":{"description":"The unique ID of a MCP Server.","schema":{"$ref":"#\/components\/schemas\/string-id"},"required":true,"name":"mcp_server_id","in":"path"},"blocked-caller-search-query":{"description":"A string phrase to apply on the search. The API will return the records that contains the specified `search_query` in `phone_number_pattern` or `comment` fields.","schema":{"type":"string"},"required":false,"name":"search_query","in":"query","examples":{"SearchByNumber":{"summary":"Returns the records matching `97348` in `phone_number_pattern` or `comment` fields.","value":"97348"},"SearchByComment":{"summary":"Returns the records matching `UAE` in `phone_number_pattern` or `comment` fields.","value":"UAE"}}},"presence-owner-id-filter-value":{"description":"The presence owner id to filter on. Use `@me` to reference the currently authenticated user.","schema":{"$ref":"#\/components\/schemas\/presence-owner-id-filter-value"},"required":false,"name":"presence_owner_id","in":"query"},"virtual-agent-id":{"description":"The unique ID of a Virtual Agent.","schema":{"$ref":"#\/components\/schemas\/string-id"},"required":true,"name":"virtual_agent_id","in":"path"},"extension-filter-value":{"description":"The extension number to filter on.","schema":{"$ref":"#\/components\/schemas\/extension-filter-value"},"required":false,"name":"extension","in":"query"},"voice-conversation-template-id":{"description":"The unique ID of a Voice Conversation Template.","schema":{"$ref":"#\/components\/schemas\/string-id"},"required":true,"name":"voice_conversation_template_id","in":"path"},"call-recording-id":{"description":"The unique id of the call recording within the account.","schema":{"$ref":"#\/components\/schemas\/call-recording-id"},"required":true,"name":"call_recording_id","in":"path"},"messaging-enabled-phone-number-current-user-access":{"description":"Filter by current user access level. Can specify multiple values separated by commas.\nWhen not specified, defaults to `messaging_allowed`.","explode":false,"schema":{"items":{"enum":["messaging_allowed","reference_only"],"type":"string"},"type":"array","default":["messaging_allowed"]},"style":"form","required":false,"name":"current_user_access","in":"query","deprecated":false},"campaign-registry-campaign-id":{"description":"The unique id of the campaign within Campaign Registry.","schema":{"$ref":"#\/components\/schemas\/campaign-registry-campaign-id"},"required":true,"name":"campaign_registry_campaign_id","in":"path"},"start-date":{"description":"Start date for building report.","schema":{"type":"string","format":"date-time"},"required":true,"name":"start_date","in":"query"},"end-date":{"description":"End date for building report.","schema":{"type":"string","format":"date-time"},"required":true,"name":"end_date","in":"query"},"blocked-caller-id":{"description":"The unique id of the `Blocked Caller` resource.","schema":{"$ref":"#\/components\/schemas\/blocked-caller-id"},"required":true,"name":"blocked_caller_id","in":"path"},"agent-ids":{"description":"Filter by specific agent IDs. If the list is empty or not provided, the report includes data for all agents, with each agent returned separately.","explode":true,"schema":{"items":{"$ref":"#\/components\/schemas\/user-id"},"type":"array","nullable":true},"required":false,"name":"agent_ids","in":"query","style":"form"},"extension-presence-status":{"description":"The presence status of the extension to filter on.","schema":{"$ref":"#\/components\/schemas\/extension-presence-status"},"required":false,"name":"presence_status","in":"query"},"internal-phone-numbers":{"description":"List of phone numbers in E.164 format. If the list is empty or not provided, the report returns a single aggregated result across all numbers.","explode":true,"schema":{"items":{"$ref":"#\/components\/schemas\/e164-phone-number-with-plus"},"type":"array","nullable":true},"required":false,"name":"internal_phone_numbers","in":"query","style":"form"},"voicemail-id":{"description":"The unique id of the voicemail within the account.","schema":{"$ref":"#\/components\/schemas\/voicemail-id"},"required":true,"name":"voicemail_id","in":"path"},"webhook-signature":{"description":"Used to make sure the webhook request is authentic and comes from net2phone. To validate the signature:\n1. Retrieve the raw body of the webhook request.\n2. Concatenate two parts using the `:` character. The resulting string should look like `{signature}:{raw_body}`.\n3. Compute the HMAC-SHA256 hash from the given string. Use the `x-net2phone-timestamp` header as the key. All \"string to bytes\" conversions should be performed using UTF-8 encoding.\n4. Convert the resulting HMAC-SHA256 hash bytes back to a string using HEX encoding (without `-` characters).\n5. Compare the resulting string with the value present in the `x-net2phone-signature` header. If they are equal, the request is authentic.\n\nSee [support article](https:\/\/support.net2phone.com\/s\/article\/Securing-net2phone-webhook-requests-to-your-application) for more information.","schema":{"example":"fe4aad021345e9c6506e163ba62aea8a0f15047712618482a2423cc008dd2fb2","type":"string"},"required":false,"name":"x-net2phone-signature","in":"header"},"tool-id":{"description":"The unique ID of a Tool.","schema":{"$ref":"#\/components\/schemas\/string-id"},"required":true,"name":"tool_id","in":"path"},"phone-number-id-2":{"description":"The unique identifier of the Phone Number.","schema":{"$ref":"#\/components\/schemas\/phone-number-id-2"},"required":true,"name":"phone_number_id","in":"path"},"contact-search-query":{"description":"A text query to filter out the paginated list of contacts.\nThe case-insensitive search is performed using `extension`, `phone_numbers` and other fields specific to the contact 'type'.\nFor example, for users `first_name`, `last_name` and `email` are searched.\nFor departments, the `display_name` will be included in search.\nNon-alphanumeric characters are ignored.\nWhitespace characters between digits are ignored to ensure formatted phone numbers can be passed.\n\nFor example:\n* `(213) 373-4253` is equivalent to `2133734253`.\n* `John   Doe` is equivalent to `john doe` and will search for case-insensitive inclusion of `john` or `doe` in contact fields.\n* `john +1 (23) 7534432 doe` will search for `john` or `1237534432` or `doe`.\n* `John75` will match a user with email `john75@example.org`.","schema":{"maxLength":100,"type":"string"},"required":false,"name":"search_query","in":"query","examples":{"FilterByDisplayName":{"summary":"Filter by `john` or `doe` values in contact fields.","value":"john doe"},"FilterByFormattedPhoneNumber":{"summary":"Filter by formatted phone number. For example, it matches `+12133734253` E.164 phone number.","value":"(213) 373-4253"},"FilterByPhoneNumberOrExtensionDigits":{"summary":"Filter by phone number or extension digits.","value":"23"}}},"user-id":{"description":"The unique id of the user within the net2phone account.  Use `@me` to reference the currently authenticated user.","schema":{"anyOf":[{"$ref":"#\/components\/schemas\/string-id"},{"$ref":"#\/components\/schemas\/current-user-id"}]},"required":true,"name":"user_id","in":"path"},"webhook-timestamp":{"description":"The timestamp of the request. Used to validate the authenticity of the webhook request in combination with `x-net2phone-signature` header.","schema":{"example":"2021-09-17T09:13:08.9125882Z","type":"string","format":"date-time"},"required":false,"name":"x-net2phone-timestamp","in":"header"},"channel-conversation-id":{"description":"Unique identifier of the channel conversation.","schema":{"$ref":"#\/components\/schemas\/channel-conversation-id"},"required":true,"name":"channel_conversation_id","in":"path"},"webhook-subscription-id":{"description":"The unique id of the webhook subscription within the account.","schema":{"$ref":"#\/components\/schemas\/string-id"},"required":true,"name":"webhook_subscription_id","in":"path"},"tts-voice-id":{"description":"The unique ID of a TTS voice.","schema":{"$ref":"#\/components\/schemas\/string-id"},"required":true,"name":"tts_voice_id","in":"path"},"knowledge-base-id":{"description":"The unique ID of a Knowledge Base.","schema":{"$ref":"#\/components\/schemas\/string-id"},"required":true,"name":"knowledge_base_id","in":"path"},"page-size":{"description":"Number of items per page.","schema":{"type":"integer","default":10,"maximum":100,"minimum":1,"format":"int32"},"name":"page_size","in":"query"},"data-source-id":{"description":"The unique ID of a Data Source.","schema":{"$ref":"#\/components\/schemas\/string-id"},"required":true,"name":"data_source_id","in":"path"},"call-queue-id":{"description":"The unique id of the call queue within account.","schema":{"$ref":"#\/components\/schemas\/string-id"},"required":true,"name":"call_queue_id","in":"path","example":"10293993"},"direct-user-conversation-id":{"description":"Unique identifier of the direct user conversation.","schema":{"$ref":"#\/components\/schemas\/direct-user-conversation-id"},"required":true,"name":"direct_user_conversation_id","in":"path"},"phone-number-assignment-status":{"description":"The status to filter on.","schema":{"$ref":"#\/components\/schemas\/phone-number-assignment-status"},"required":false,"name":"assignment_status","in":"query"},"messaging-enabled-phone-number-assignment-id":{"description":"The unique identifier of the messaging enabled phone number assignment.","schema":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-assignment-id"},"required":true,"name":"messaging_enabled_phone_number_assignment_id","in":"path"},"direct-group-conversation-id":{"description":"Unique identifier of the direct group conversation.","schema":{"$ref":"#\/components\/schemas\/direct-group-conversation-id"},"required":true,"name":"direct_group_conversation_id","in":"path"},"iana-timezone-id":{"description":"Timezone ID (e.g., US\/Eastern).","schema":{"$ref":"#\/components\/schemas\/iana-timezone-id-optional"},"required":false,"name":"iana_timezone_id","in":"query"},"after":{"description":"The opaque cursor to paginate forwards. Cannot be used together with `before`.","schema":{"example":"eyJrIjoiRkM5RDhDQTktRkZCMy00REEzLTg1MEQtNkQ3Nzk5QTMzMTlFIn0=","type":"string"},"name":"after","in":"query"},"sip-registration-status":{"description":"The registration status to filter on.","schema":{"$ref":"#\/components\/schemas\/sip-registration-status"},"required":false,"name":"registration_status","in":"query"},"interval-size":{"description":"The time step used to aggregate data points in the report's time-series section. Controls the \"density\" of the report (e.g., daily points vs. hourly points).","schema":{"$ref":"#\/components\/schemas\/interval-size"},"required":true,"name":"interval_size","in":"query"}},"headers":{"rate-limit-remaining":{"description":"Indicates the remaining quota units for the current net2phone account.","schema":{"example":1,"type":"integer","minimum":0}},"rate-limit-reset":{"description":"Indicates the number of seconds until the request quota resets.","schema":{"example":30,"type":"integer","minimum":0}},"n2p-response-type":{"description":"The type of the response schema in the body. It can be useful to distinguish between different response types before parsing the body.","schema":{"type":"string"}},"rate-limit-limit":{"description":"Indicates the request quota associated to the net2phone account in the current time window. The format of the header value is based on [RateLimit Header Fields for HTTP](https:\/\/datatracker.ietf.org\/doc\/html\/draft-polli-ratelimit-headers-05#section-3.1) IETF standard.","schema":{"example":"100, 100;w=60","type":"string"}}},"responses":{"mcp-server-tool-configuration-create-error":{"description":"The MCP Tool Configuration cannot be created because the maximum number of MCP Tool Configurations was reached for the MCP Server.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/mcp-server-tool-configuration-create-error"}}}},"end-conversation-error":{"description":"The conversation exists, but ending it via this endpoint is not supported for its transport type.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/end-conversation-error"}}}},"bad-request-error":{"description":"The request is malformed (e.g. includes invalid JSON).","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/bad-request-error"}}}},"phone-number-assignment-required-error":{"description":"The Phone Number can't be assigned\/unassigned or deleted, because every user in the account needs to have a phone number assigned.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/phone-number-assignment-required-error"}}}},"mcp-server-delete-error":{"description":"The provided request is semantically invalid or not supported on this account.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/mcp-server-delete-error"}}}},"pbx-directory-configuration-error":{"description":"The requested resource is in conflict state and can't be processed.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/pbx-directory-configuration-error"}}}},"conflict-error":{"description":"The requested resource is in conflict state and can't be processed.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/conflict-error"}}}},"knowledge-base-delete-error":{"description":"The provided request is semantically invalid or not supported on this account.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/knowledge-base-delete-error"}}}},"create-conversation-message-error":{"description":"The conversation cannot accept a new message because it has ended or has a pending client tool call.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/create-conversation-message-error"}}}},"virtual-agent-create-error":{"description":"The Agent cannot be created because the maximum number of agents was reached.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/virtual-agent-create-error"}}}},"tool-delete-error":{"description":"The provided request is semantically invalid or not supported on this account.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/tool-delete-error"}}}},"authentication-error":{"description":"The authentication token is missing, expired or invalid.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/authentication-error"}}}},"not-supported-error":{"description":"The operation is not supported with the current net2phone account type.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/not-supported-error"}}}},"not-found-error":{"description":"The requested resource is not found.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/not-found-error"}}}},"submit-tool-result-error":{"description":"The tool result cannot be submitted because the conversation has ended, there is no pending client tool call on the specified message, or the result has already been submitted.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/submit-tool-result-error"}}}},"invalid-request-error":{"description":"The provided request is semantically invalid or not supported on this account.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/invalid-request-error"}}}},"batch-create-phone-numbers-forbidden-error":{"description":"The current user doesn't have access or the phone number maximum limits reached.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/batch-create-phone-numbers-forbidden-error"}}}},"blocked-callers-conflict-error":{"description":"The request payload has a conflict with existing data.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/blocked-phone-number-pattern-already-exist-error"}}}},"phone-number-conflict-error":{"description":"The current phone number assignment is required, or it is used as caller id.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/phone-number-conflict-error"}}}},"mcp-server-create-error":{"description":"The MCP Server cannot be created because the maximum number of MCP Servers was reached.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/mcp-server-create-error"}}}},"feature-unavailable-error":{"description":"The feature is not available for your account or might require additional licenses. When a feature is activated, you might need to get a new access token to avoid this error response.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/feature-unavailable-error"}}}},"phone-number-bound-conversation-create-item-error":{"description":"The gupshup integration can't be created.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-create-item-error"}}}},"throttling-error":{"description":"The request quota for your net2phone account was exhausted.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/throttling-error"}}}},"forbidden-error":{"description":"The operation is blocked due to insufficient access rights.","headers":{"RateLimit-Reset":{"$ref":"#\/components\/headers\/rate-limit-reset"},"N2P-Response-Type":{"$ref":"#\/components\/headers\/n2p-response-type"},"RateLimit-Limit":{"$ref":"#\/components\/headers\/rate-limit-limit"},"RateLimit-Remaining":{"$ref":"#\/components\/headers\/rate-limit-remaining"}},"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/forbidden-error"}}}}},"schemas":{"data-import-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the Data Import.","example":"12345","title":"DataImportId"},"messaging-enabled-phone-number-channel-sms-mms-registration-type":{"title":"MessagingEnabledPhoneNumberChannelSmsMmsRegistrationType","description":"Current active registration type for the SMS\/MMS channel.\nThis field represents the operational registration type and remains stable during async transitions.\nWhen a registration type change is in progress, this field continues to reflect the current type\nuntil the pending change request completes successfully. Check the `pending_change_request` field to detect ongoing changes.","type":"string","x-n2p-enum":{"values":[{"name":"None","description":"No active registration. The phone number has not been registered or registration was removed.","value":"none"},{"name":"CampaignRegistry","description":"Campaign Registry (10DLC) registration through The Campaign Registry (TCR).","value":"campaign_registry"},{"name":"TollFree","description":"Toll-free registration.","value":"toll_free"},{"name":"Unrestricted","description":"Local long code numbers in regions where A2P 10DLC registration is not required (e.g., Canada).","value":"unrestricted"}],"name":"MessagingEnabledPhoneNumberSmsMmsRegistrationType","modelAsString":false},"enum":["none","campaign_registry","toll_free","unrestricted"]},"data-import-display-name":{"title":"DataImportDisplayName","description":"The unique name of the Data Import.","type":"string","maxLength":100,"example":"data.pdf","nullable":false},"conversation-created":{"allOf":[{"$ref":"#\/components\/schemas\/conversation-created-message-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-common"},{"required":["triggered_by"],"type":"object","properties":{"triggered_by":{"$ref":"#\/components\/schemas\/actor"},"added_members":{"items":{"$ref":"#\/components\/schemas\/actor"},"type":"array"}}}],"title":"ConversationCreated"},"data-import-pdf-options":{"title":"DataImportPdfOptions","type":"object","nullable":true,"properties":{"mode":{"description":"`single` — Create one Data Source that summarizes the entire PDF. Best for shorter or straightforward documents.\n\n`multiple` — Create multiple Data Sources. The AI analyzes the PDF to determine the most relevant and useful content for retrieval by the Virtual Agent.","type":"string","enum":["single","multiple"],"default":"single"}}},"data-import-url-options":{"title":"DataImportUrlOptions","type":"object","required":["url","max_urls"],"properties":{"max_urls":{"description":"Maximum number of pages to crawl from the starting URL.","type":"integer","maximum":100},"url":{"description":"Starting URL to crawl or scrape; must be a valid absolute URI.","type":"string","format":"uri"},"per_url_mode":{"description":"`single` — For each crawled page, create one Data Source representing that page's content. Best for pages that are concise or focused on a single topic.\n\n`multiple` — Create multiple Data Sources per page. The AI analyzes each page to determine the most relevant and useful content for retrieval by the Virtual Agent.","type":"string","enum":["single","multiple"],"default":"single"}},"nullable":true},"conversation-description-changed-message-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"Conversation description changed message type.","type":"string","enum":["conversation_description_changed"]}}},{"$ref":"#\/components\/schemas\/chat-message-id-reference"}],"example":{"type":"conversation_description_changed","id":"42"},"title":"ConversationDescriptionChangedMessageIdTypedReference"},"messaging-enabled-phone-number-campaign-registry-campaign":{"title":"MessagingEnabledPhoneNumberCampaignRegistryCampaign","description":"Optional details about Campaign Registry (10DLC) registration state for this phone number.","type":"object","properties":{"id":{"$ref":"#\/components\/schemas\/campaign-registry-campaign-id"}}},"conversation-description-changed":{"allOf":[{"$ref":"#\/components\/schemas\/conversation-description-changed-message-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-common"},{"required":["old_description","new_description","triggered_by"],"type":"object","properties":{"triggered_by":{"$ref":"#\/components\/schemas\/actor"},"old_description":{"type":"string"},"new_description":{"type":"string"}}}],"title":"ConversationDescriptionChanged"},"data-import-state":{"title":"DataImportState","description":"The state of the import process.","type":"string","enum":["pending","complete","failed","partial"]},"messaging-enabled-phone-number-channel-sms-mms-pending-change-request-status":{"title":"MessagingEnabledPhoneNumberChannelSmsMmsPendingChangeRequestStatus","description":"Status of the registration type pending change request operation.","type":"string","x-n2p-enum":{"values":[{"name":"Active","description":"The pending change request operation is in progress.","value":"active"},{"name":"Failed","description":"The pending change request operation failed. See the error field for details.","value":"failed"}],"name":"MessagingEnabledPhoneNumberSmsMmsPendingChangeRequestStatus","modelAsString":false},"enum":["active","failed"]},"data-import-type":{"title":"DataImportType","description":"the type of importer.","type":"string","enum":["pdf","url","csv"]},"huddle-call-ended-message-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"Huddle call ended message type.","type":"string","enum":["huddle_call_ended"]}}},{"$ref":"#\/components\/schemas\/chat-message-id-reference"}],"example":{"type":"huddle_call_ended","id":"42"},"title":"HuddleCallEndedMessageIdTypedReference"},"conversation-members-added-message-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"Conversation members added message type.","type":"string","enum":["conversation_members_added"]}}},{"$ref":"#\/components\/schemas\/chat-message-id-reference"}],"example":{"type":"conversation_members_added","id":"42"},"title":"ConversationMembersAddedMessageIdTypedReference"},"messaging-enabled-phone-number-channel-sms-mms-pending-change-request-error":{"title":"MessagingEnabledPhoneNumberChannelSmsMmsPendingChangeRequestError","description":"Error information for a failed registration type pending change request.","type":"object","required":["message"],"properties":{"message":{"description":"Human-readable error message describing why the pending change request failed.","type":"string"}}},"data-import":{"title":"DataImport","type":"object","required":["id","created_at_time","created_by","display_name","knowledge_base_id","type","updated_at_time","updated_by"],"properties":{"display_name":{"$ref":"#\/components\/schemas\/data-import-display-name"},"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"},"created_by":{"$ref":"#\/components\/schemas\/audit-actor"},"knowledge_base_id":{"$ref":"#\/components\/schemas\/knowledge-base-id"},"pdf_options":{"$ref":"#\/components\/schemas\/data-import-pdf-options"},"state":{"$ref":"#\/components\/schemas\/data-import-state"},"url_options":{"$ref":"#\/components\/schemas\/data-import-url-options"},"type":{"$ref":"#\/components\/schemas\/data-import-type"},"state_description":{"description":"A more detailed description of the state of the import.","type":"string"},"updated_by":{"$ref":"#\/components\/schemas\/audit-actor"},"expires_at_time":{"description":"The date and time that the import record will be removed from our system. The data that was imported will not be removed.","type":"string","nullable":true,"format":"date-time"},"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"id":{"$ref":"#\/components\/schemas\/data-import-id"}}},"user-audit-fields-immutable":{"title":"UserAuditFieldsImmutable","type":"object","required":["created_by"],"properties":{"created_by":{"$ref":"#\/components\/schemas\/user-reference"}},"nullable":true},"conversation-members-added":{"allOf":[{"$ref":"#\/components\/schemas\/conversation-members-added-message-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-common"},{"required":["added_members","triggered_by"],"type":"object","properties":{"triggered_by":{"$ref":"#\/components\/schemas\/actor"},"added_members":{"items":{"$ref":"#\/components\/schemas\/actor"},"type":"array"}}}],"title":"ConversationMembersAdded"},"huddle-room":{"allOf":[{"$ref":"#\/components\/schemas\/huddle-room-reference"},{"$ref":"#\/components\/schemas\/user-audit-fields-immutable"},{"required":["room_url","guest_password"],"type":"object","properties":{"guest_password":{"description":"The password that non net2phone users can use to join the room. It can be used together with `room_url` to create a guest-friendly link, e.g. `https:\/\/huddle.net2phone.com\/l3f-m35-gxa?guestPassword={guest_password}`. This will free the user from the need to type the password manually.","type":"string","minLength":1,"example":"abcdefgh"},"room_url":{"description":"The Huddle application URL to join the audio\/video conference in the room.","type":"string","example":"https:\/\/huddle.net2phone.com\/l3f-m35-gxa"},"dial_in_pin":{"description":"A PIN code to use when joining the conference call using a Huddle Dial-In phone number. Set to `null` or omitted if Dial-In is not enabled for this room.","type":"string","minLength":1,"example":"123456","nullable":true}}}],"title":"HuddleRoom"},"conversation-members-removed-message-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"Conversation members removed message type.","type":"string","enum":["conversation_members_removed"]}}},{"$ref":"#\/components\/schemas\/chat-message-id-reference"}],"example":{"type":"conversation_members_removed","id":"42"},"title":"ConversationMembersRemovedMessageIdTypedReference"},"conversation-members-removed":{"allOf":[{"$ref":"#\/components\/schemas\/conversation-members-removed-message-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-common"},{"required":["removed_members","triggered_by"],"type":"object","properties":{"triggered_by":{"$ref":"#\/components\/schemas\/actor"},"removed_members":{"items":{"$ref":"#\/components\/schemas\/actor"},"type":"array"}}}],"title":"ConversationMembersRemoved"},"limit":{"title":"Limit","description":"Number of items per page.","type":"integer","format":"int32","minimum":1,"maximum":100,"default":10},"conversation-name-changed-message-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"Conversation name changed message type.","type":"string","enum":["conversation_name_changed"]}}},{"$ref":"#\/components\/schemas\/chat-message-id-reference"}],"example":{"type":"conversation_name_changed","id":"42"},"title":"ConversationNameChangedMessageIdTypedReference"},"cursor-page-after":{"title":"CursorPageAfter","description":"The opaque cursor pointing to the last record of the page. Set to `null` if the resulting collection is empty.","type":"string","example":"eyJrIjoiRkM5RDhDQTktRkZCMy00REEzLTg1MEQtNkQ3Nzk5QTMzMTlFIn0=","nullable":true},"huddle-call-result":{"title":"HuddleCallResult","description":"The final status of the call.","type":"string","x-n2p-enum":{"values":[{"description":"The call was answered and some conversation happened\n","name":"Answered","value":"answered"},{"description":"The call wasn't answered. * The call rang for too long and was missed. * The call was rejected by a callee. * The call was cancelled early by a caller.\n","name":"Not Answered","value":"not_answered"}],"name":"HuddleCallResult","modelAsString":false},"enum":["answered","not_answered"]},"cursor-page-of-data-imports":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-page"},{"required":["items"],"type":"object","properties":{"items":{"items":{"allOf":[{"$ref":"#\/components\/schemas\/data-import"},{"$ref":"#\/components\/schemas\/cursor-item-fields"}]},"type":"array"}}}],"title":"CursorPageOfDataImports"},"channel-conversation-display-name":{"pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$","description":"The unique name of the channel conversation.","type":"string","maxLength":60,"example":"some-name-v1","nullable":false,"title":"ChannelConversationDisplayName"},"create-data-import-command":{"title":"CreateDataImportCommand","type":"object","required":["display_name","type"],"properties":{"display_name":{"$ref":"#\/components\/schemas\/data-import-display-name"},"type":{"$ref":"#\/components\/schemas\/data-import-type"},"pdf_options":{"$ref":"#\/components\/schemas\/data-import-pdf-options"},"url_options":{"$ref":"#\/components\/schemas\/data-import-url-options"}}},"huddle-call-record-missed-reason":{"title":"HuddleCallRecordMissedReason","description":"In case the call result is not_answered, provides additional information about the reason for the missed call.\nThe reason may vary depending on the user.\nFor example, depends on whether it is the caller or callee, the call can be cancelled or rejected.","type":"string","x-n2p-enum":{"values":[{"name":"Callee Did Not Answer","description":"The call rang for too long and was missed","value":"not_answered"},{"name":"Callee Rejected Call","description":"The call was rejected by a callee","value":"rejected"},{"name":"Caller Cancelled Call","description":"The call was cancelled early by a caller","value":"cancelled"}],"name":"HuddleCallRecordMissedReason","modelAsString":false},"enum":["not_answered","rejected","cancelled"]},"create-data-import-response":{"title":"CreateDataImportResponse","type":"object","properties":{"upload_form_values":{"description":"These are the form values which must be included in the request body as multipart form data when posting to the `upload_url`.","type":"object","additionalProperties":{"type":"string"}},"upload_url":{"description":"The URL to POST the file to.","type":"string"},"id":{"$ref":"#\/components\/schemas\/data-import-id"}}},"cursor-page-before":{"title":"CursorPageBefore","description":"The opaque cursor pointing to the first record of the page. Set to `null` if the resulting collection is empty.","type":"string","example":"eyJrIjoiN0E2RjQ2NjYtNzNGOC00QzM4LTlDOUYtNThCRkY2NDE2QzQ4In0=","nullable":true},"cursor-page-has-before":{"title":"CursorPageHasBefore","description":"If false, this is the first page of data.","type":"boolean"},"cursor-page":{"title":"CursorPage","type":"object","required":["has_after","has_before"],"properties":{"after":{"$ref":"#\/components\/schemas\/cursor-page-after"},"before":{"$ref":"#\/components\/schemas\/cursor-page-before"},"has_after":{"$ref":"#\/components\/schemas\/cursor-page-has-after"},"has_before":{"$ref":"#\/components\/schemas\/cursor-page-has-before"}}},"gupshup-integration-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique ID of the user's Gupshup integration.","title":"GupshupIntegrationId"},"huddle-call-record-participant":{"title":"HuddleCallRecordParticipant","type":"object","required":["user","invited_by"],"properties":{"call_missed_reason":{"$ref":"#\/components\/schemas\/huddle-call-record-missed-reason"},"joined_at_time":{"description":"Time when the participant joined the call.","type":"string","example":"2024-04-22T05:08:16.794Z","nullable":true,"format":"date-time"},"left_at_time":{"description":"Time when the participant left the call.","type":"string","example":"2024-04-22T05:09:32.895Z","nullable":true,"format":"date-time"},"user":{"$ref":"#\/components\/schemas\/user-reference"},"invited_by":{"$ref":"#\/components\/schemas\/user-reference"}}},"data-source-id-reference":{"title":"DataSourceIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/data-source-id"}}},"data-source-reference":{"allOf":[{"$ref":"#\/components\/schemas\/data-source-id-reference"},{"type":"object","properties":{"content":{"type":"string"}}}],"title":"DataSourceReference"},"data-source":{"allOf":[{"$ref":"#\/components\/schemas\/data-source-reference"},{"type":"object","properties":{"knowledge_base_id":{"$ref":"#\/components\/schemas\/knowledge-base-id"}}}],"title":"DataSource"},"create-data-source-command":{"title":"CreateDataSourceCommand","type":"object","required":["data_sources"],"properties":{"data_sources":{"items":{"type":"object","properties":{"content":{"type":"string"}}},"type":"array","minItems":1,"maxItems":100}}},"tool-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the tool.","example":"12345","title":"ToolId"},"huddle-call-record":{"title":"HuddleCallRecord","type":"object","required":["room","participants"],"properties":{"participants":{"items":{"$ref":"#\/components\/schemas\/huddle-call-record-participant"},"type":"array"},"result":{"$ref":"#\/components\/schemas\/huddle-call-result"},"room":{"$ref":"#\/components\/schemas\/huddle-room"}}},"tool-display-name":{"title":"ToolDisplayName","description":"The unique name of the tool.","type":"string","maxLength":100,"example":"my-tool-v1","nullable":false},"huddle-call-ended":{"allOf":[{"$ref":"#\/components\/schemas\/huddle-call-ended-message-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-common"},{"required":["huddle_call_record"],"type":"object","properties":{"huddle_call_record":{"$ref":"#\/components\/schemas\/huddle-call-record"}}}],"title":"HuddleCallEnded"},"tool-description":{"title":"ToolDescription","type":"string","maxLength":1024,"example":"Description of the tool","nullable":false},"tool-type":{"title":"ToolType","description":"Tool type, must be one of [\"pre_conversation\", \"runtime\"].","type":"string","enum":["pre_conversation","runtime"],"nullable":false},"filter-fields":{"title":"FilterFields","type":"object","properties":{"filter":{"$ref":"#\/components\/schemas\/filter"}}},"search-call-detail-records-command":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-pagination-fields"},{"$ref":"#\/components\/schemas\/filter-fields"},{"type":"object","properties":{"owners":{"description":"An array of owners selected for filtering the CDRs.\nWhen both `owners` and `filter` are provided, the results are restricted by both (logical AND).\nIf the array is absent or empty the API applies filtering by the `filter` property only.","type":"array","maxItems":32,"items":{"$ref":"#\/components\/schemas\/call-history-owner-id-typed-reference"}},"is_cursor_inclusive":{"description":"Set this to `true` to include the item referenced by `before` or `after` cursor into the resulting page. If the cursor is not specified or the item referenced by the cursor was deleted, this flag has no effect.","type":"boolean","default":false}}}],"title":"SearchCallDetailRecordsCommand"},"huddle-conference-invitation-message-id-reference":{"title":"HuddleConferenceInvitationMessageIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/huddle-conference-invitation-message-id"}}},"huddle-conference-invitation-message-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"Huddle conference invitation message type.","type":"string","enum":["huddle_conference_invitation_message"]}}},{"$ref":"#\/components\/schemas\/huddle-conference-invitation-message-id-reference"}],"example":{"type":"huddle_conference_invitation_message","id":"42"},"title":"HuddleConferenceInvitationMessageIdTypedReference"},"cursor-page-of-call-detail-record":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-page"},{"required":["items"],"type":"object","properties":{"items":{"items":{"$ref":"#\/components\/schemas\/call-detail-record"},"type":"array"}}}],"title":"CursorPageOfCallDetailRecord"},"message-common-status":{"title":"MessageCommonStatus","description":"Status of the message.","type":"string","x-n2p-enum":{"values":[{"description":"Message content is available for display without limitations","name":"Active","value":"active"},{"description":"Message content has been virtually deleted","name":"Deleted","value":"deleted"}],"name":"ChatMessageStatus","modelAsString":false},"enum":["active","deleted"],"nullable":true},"call-queue-metric-type":{"title":"CallQueueMetricType","description":"Call queue metric type.","type":"string","enum":["agents_total_count_last","agents_available_count_last","agents_busy_count_last","agents_logged_in_count_last","agents_logged_out_count_last","calls_waiting_count_last","calls_in_progress_count_last","calls_active_count_last","agents_busy_off_queue_count_last","agents_unavailable_count_last"]},"object-assignment":{"title":"ObjectAssignment","type":"object","required":["id","assigned_at_time"],"properties":{"assigned_at_time":{"$ref":"#\/components\/schemas\/assigned-at-time"},"id":{"$ref":"#\/components\/schemas\/knowledge-base-id"}}},"huddle-conference-invitation-message":{"allOf":[{"$ref":"#\/components\/schemas\/huddle-conference-invitation-message-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-common"},{"required":["can_be_deleted","status"],"type":"object","properties":{"room":{"$ref":"#\/components\/schemas\/huddle-room"},"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"status":{"$ref":"#\/components\/schemas\/message-common-status"},"can_be_deleted":{"description":"Indicates whether the message can be deleted by the current user.","type":"boolean"},"updated_by":{"$ref":"#\/components\/schemas\/actor"}}}],"title":"HuddleConferenceInvitationMessage"},"user-typed-reference-optional-deprecated":{"allOf":[{"$ref":"#\/components\/schemas\/user-reference-optional-deprecated"},{"type":"object","required":["type"],"nullable":true,"properties":{"type":{"enum":["user"],"type":"string"}}}],"title":"UserTypedReferenceOptionalDeprecated"},"user-typed-reference-deprecated":{"allOf":[{"$ref":"#\/components\/schemas\/user-typed-reference-optional-deprecated"},{"type":"object","nullable":false}],"title":"UserTypedReferenceDeprecated"},"mcp-server-assignment":{"title":"McpServerAssignment","type":"object","required":["id","assigned_at_time"],"properties":{"assigned_at_time":{"description":"The timestamp when MCP Server was assigned to a Virtual Agent.","type":"string","nullable":true,"format":"date-time"},"id":{"$ref":"#\/components\/schemas\/mcp-server-id"}}},"voicemail-owner-deprecated":{"title":"VoicemailOwnerDeprecated","discriminator":{"propertyName":"type","mapping":{"department":"#\/components\/schemas\/department-typed-reference","user":"#\/components\/schemas\/user-typed-reference-deprecated"}},"oneOf":[{"$ref":"#\/components\/schemas\/user-typed-reference-deprecated"},{"$ref":"#\/components\/schemas\/department-typed-reference"}]},"n2p-directory-configuration":{"title":"N2PDirectoryConfiguration","type":"object","required":["directory_access_enabled"],"properties":{"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"},"created_by":{"$ref":"#\/components\/schemas\/audit-actor"},"directory_access_enabled":{"description":"If the value is `true` then the Agent can access your PBX directory and transfer the caller to users found in your PBX directory.","type":"boolean"},"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"updated_by":{"$ref":"#\/components\/schemas\/audit-actor"}}},"voicemail-reference-optional-deprecated":{"allOf":[{"$ref":"#\/components\/schemas\/timestamp-audit-fields"},{"description":"Voicemail left for a given call. Can be omitted or set to `null` if there is no voicemail for this call detail record.","type":"object","required":["id","duration_seconds","owner","status"],"nullable":true,"properties":{"duration_seconds":{"description":"Duration of the voicemail audio in seconds.","type":"integer","example":30,"format":"int32"},"status":{"$ref":"#\/components\/schemas\/voicemail-status"},"owner":{"$ref":"#\/components\/schemas\/voicemail-owner-deprecated"},"id":{"$ref":"#\/components\/schemas\/voicemail-id"}}}],"title":"VoicemailReferenceOptionalDeprecated"},"user-audit-fields-optional-deprecated":{"title":"UserAuditFieldsOptionalDeprecated","type":"object","properties":{"created_by":{"$ref":"#\/components\/schemas\/user-reference-optional-deprecated"},"updated_by":{"$ref":"#\/components\/schemas\/user-reference-optional-deprecated"}}},"virtual-agent-messaging-settings":{"title":"VirtualAgentMessagingSettings","type":"object","required":["inactivity_timeout_minutes"],"properties":{"inactivity_timeout_minutes":{"description":"The number of minutes of inactivity before the messaging conversation times out.","minimum":60,"example":1440,"type":"integer","maximum":10080}}},"voicemail-view-status":{"title":"VoicemailViewStatus","description":"Shows if the voicemail was read \/ unread.","type":"string","x-n2p-enum":{"values":[{"description":"Marks the voicemail status as unread.","name":"Unread","value":"unread"},{"description":"Marks the voicemail status as read.","name":"Read","value":"read"}],"name":"VoicemailViewStatus","modelAsString":false},"enum":["unread","read"]},"call-queue-metric-unit":{"title":"CallQueueMetricUnit","description":"Call queue metric unit.","type":"string","enum":["count"]},"virtual-agent-chat-settings":{"title":"VirtualAgentChatSettings","type":"object","required":["inactivity_timeout_minutes"],"properties":{"inactivity_timeout_minutes":{"description":"The number of minutes of inactivity before the chat conversation times out.","minimum":60,"example":1440,"type":"integer","maximum":10080}}},"set-voicemail-view-status-command":{"title":"SetVoicemailViewStatusCommand","type":"object","required":["status"],"properties":{"status":{"$ref":"#\/components\/schemas\/voicemail-view-status"}}},"call-queue-metric":{"title":"CallQueueMetric","type":"object","required":["metric_type","unit","call_queue","value"],"properties":{"metric_type":{"$ref":"#\/components\/schemas\/call-queue-metric-type"},"value":{"example":4,"type":"number","description":"Call queue metric value."},"unit":{"$ref":"#\/components\/schemas\/call-queue-metric-unit"},"call_queue":{"$ref":"#\/components\/schemas\/call-queue-id-reference"}}},"iana-timezone-id-optional":{"title":"IanaTimezoneIdOptional","description":"[IANA](https:\/\/en.wikipedia.org\/wiki\/List_of_tz_database_time_zones) timezone identifier.","type":"string","example":"US\/Eastern","nullable":true},"iana-timezone-id":{"allOf":[{"$ref":"#\/components\/schemas\/iana-timezone-id-optional"},{"example":"America\/New_York","type":"string","nullable":false}],"title":"IanaTimezoneId"},"call-queue-caller-common":{"title":"CallQueueCallerCommon","type":"object","properties":{"caller_display_name":{"type":"string"}}},"create-click-to-call-command":{"title":"CreateClickToCallCommand","type":"object","required":["to"],"properties":{"to":{"anyOf":[{"$ref":"#\/components\/schemas\/e164-phone-number-no-plus"},{"$ref":"#\/components\/schemas\/phone-extension"}],"description":"The destination to call to. This could be:\n- A phone number in E.164 format.\n- An internal extension number."},"connection_announcement_enabled":{"description":"Controls whether the \"Please wait while we connect your call\" announcement is played during the call setup. When set to `false`, the announcement will be skipped.","type":"boolean","default":true},"from":{"allOf":[{"$ref":"#\/components\/schemas\/e164-phone-number-no-plus-nullable"}],"description":"The origination phone number in E.164 format (without leading '+'). It should be assigned or set as caller id for the user making the request. If the value is unspecified or set to `null`, one of the assigned or caller id phone numbers will be used."}}},"virtual-agent-time-settings":{"title":"VirtualAgentTimeSettings","type":"object","required":["timezone"],"properties":{"timezone":{"allOf":[{"$ref":"#\/components\/schemas\/iana-timezone-id"}],"description":"The timezone of the Virtual Agent. Available in `jq` expressions as `.session.timezone`."},"inject_datetime":{"description":"Whether the conversation start date and time, rendered in the configured timezone, is automatically added to the Virtual Agent's instructions for every new conversation.","type":"boolean","example":true,"default":false}}},"call-queue-call-direction":{"title":"CallQueueCallDirection","description":"Call direction related to the agent.","type":"string","enum":["inbound","outbound"]},"call-queue-agent-ringing-info":{"title":"CallQueueAgentRingingInfo","type":"object","properties":{"caller":{"$ref":"#\/components\/schemas\/call-queue-caller-common"},"direction":{"$ref":"#\/components\/schemas\/call-queue-call-direction"},"from":{"$ref":"#\/components\/schemas\/call-endpoint"}}},"call-queue-agent-call":{"title":"CallQueueAgentCall","type":"object","properties":{"busy_in_queue":{"type":"boolean"},"agent":{"$ref":"#\/components\/schemas\/user-id-reference"},"call":{"$ref":"#\/components\/schemas\/call-queue-agent-call-details"},"ringing_info":{"$ref":"#\/components\/schemas\/call-queue-agent-ringing-info"}}},"call-queue-caller":{"allOf":[{"$ref":"#\/components\/schemas\/call-queue-caller-common"},{"required":["caller_endpoint"],"type":"object","properties":{"caller_endpoint":{"$ref":"#\/components\/schemas\/call-endpoint"}}}],"title":"CallQueueCaller"},"gupshup-integration-app-name":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique name of the user's Gupshup application.","example":"DemoApp","title":"GupshupIntegrationAppName"},"call-queue-waiting-call":{"title":"CallQueueWaitingCall","type":"object","required":["caller","start_waiting_time"],"properties":{"caller":{"$ref":"#\/components\/schemas\/call-queue-caller"},"start_waiting_time":{"type":"string","format":"date-time"}}},"gupshup-integration-reference":{"title":"GupshupIntegrationReference","type":"object","required":["id","app_name"],"properties":{"app_name":{"$ref":"#\/components\/schemas\/gupshup-integration-app-name"},"id":{"$ref":"#\/components\/schemas\/gupshup-integration-id"}}},"call-queue-statistics":{"title":"CallQueueStatistics","type":"object","required":["metrics","agents_available","agents_offline","agents_busy","waiting_calls"],"properties":{"waiting_calls":{"items":{"$ref":"#\/components\/schemas\/call-queue-waiting-call"},"type":"array"},"agents_available":{"items":{"$ref":"#\/components\/schemas\/user-id-reference"},"type":"array"},"agents_offline":{"items":{"$ref":"#\/components\/schemas\/user-id-reference"},"type":"array"},"metrics":{"items":{"$ref":"#\/components\/schemas\/call-queue-metric"},"type":"array"},"agents_busy":{"items":{"$ref":"#\/components\/schemas\/call-queue-agent-call"},"type":"array"}}},"messaging-enabled-phone-number-channel-whatsapp-provider-gupshup":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"enum":["gupshup"],"type":"string"}}},{"$ref":"#\/components\/schemas\/gupshup-integration-reference"}],"title":"MessagingEnabledPhoneNumberChannelWhatsappProviderGupshup"},"page-of-sip-trunk-account":{"allOf":[{"$ref":"#\/components\/schemas\/page"},{"required":["items"],"type":"object","properties":{"items":{"items":{"$ref":"#\/components\/schemas\/sip-trunk-account"},"type":"array"}}}],"title":"PageOfSipTrunkAccount"},"messaging-enabled-phone-number-channel-whatsapp-provider":{"title":"MessagingEnabledPhoneNumberChannelWhatsappProvider","discriminator":{"propertyName":"type","mapping":{"gupshup":"#\/components\/schemas\/messaging-enabled-phone-number-channel-whatsapp-provider-gupshup"}},"oneOf":[{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel-whatsapp-provider-gupshup"}]},"messaging-enabled-phone-number-channel-whatsapp":{"title":"MessagingEnabledPhoneNumberChannelWhatsapp","type":"object","required":["type","provider"],"properties":{"provider":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel-whatsapp-provider"},"type":{"enum":["whatsapp"],"type":"string"}}},"call-queue-report-interval-size":{"title":"CallQueueReportIntervalSize","description":"Interval size for report data aggregation.","type":"string","x-n2p-enum":{"values":[{"name":"QuarterOfHour","description":"The report will be aggregated by 15-minute batches.","value":"quarter_of_hour"},{"name":"Hour","description":"The report will be aggregated by 1-hour batches.","value":"hour"},{"name":"Day","description":"The report will be aggregated by 1-day batches.","value":"day"}],"name":"CallQueueReportIntervalSize","modelAsString":false},"enum":["quarter_of_hour","hour","day"]},"extension-presence-status":{"title":"ExtensionPresenceStatus","description":"The presence status of this extension.","type":"string","x-n2p-enum":{"values":[{"name":"Online","description":"The associated extension is currently registered with the net2phone's Registrar.","value":"online"},{"name":"Offline","description":"The associated extension is not currently registered with the net2phone's Registrar.","value":"offline"},{"name":"Unknown","description":"No information available about the associated extension.","value":"unknown"}],"name":"ExtensionPresenceStatus","modelAsString":false},"enum":["online","offline","unknown"]},"iana-timezone-id-with-utc-default":{"title":"IanaTimezoneIdWithUtcDefault","description":"[IANA](https:\/\/en.wikipedia.org\/wiki\/List_of_tz_database_time_zones) timezone identifier.","type":"string","example":"US\/Eastern","default":"UTC"},"build-call-queue-agents-report-command":{"allOf":[{"type":"object","properties":{"agent_ids":{"description":"List of target agents for the report. If empty, the report will include all call queue agents.","type":"array","nullable":true,"items":{"$ref":"#\/components\/schemas\/string-id"}},"start_date":{"description":"Start date for building report.","type":"string","format":"date-time"},"interval_size":{"$ref":"#\/components\/schemas\/call-queue-report-interval-size"},"end_date":{"description":"End date for building report.","type":"string","format":"date-time"},"iana_timezone_id":{"$ref":"#\/components\/schemas\/iana-timezone-id-with-utc-default"}}}],"title":"BuildCallQueueAgentsReportCommand"},"call-queue-agent-report":{"title":"CallQueueAgentReport","type":"object","properties":{"total_handling_time":{"description":"Total duration (in seconds) of calls handled by the agent within the interval.","type":"number"},"agent":{"$ref":"#\/components\/schemas\/user-id-reference"},"max_handling_time":{"description":"Maximum call handling duration (in seconds) for calls started within the interval.","type":"number"},"interval_start_time":{"description":"Start time of the agent report interval.","type":"string","format":"date-time"},"min_handling_time":{"description":"Minimum call handling duration (in seconds) for calls started within the interval.","type":"number"},"average_handling_time":{"description":"Average call handling duration (in seconds) for calls started within the interval.","type":"number"},"answered_calls":{"description":"Number of calls answered by the agent that started within the interval.","type":"number"}}},"extension-filter-value":{"title":"ExtensionFilterValue","description":"A short number used to make internal calls.","type":"string","example":"14154"},"presence-owner-id-filter-value":{"anyOf":[{"$ref":"#\/components\/schemas\/string-id"},{"$ref":"#\/components\/schemas\/current-user-id"}],"title":"PresenceOwnerIdFilterValue"},"extension-presence-id":{"allOf":[{"$ref":"#\/components\/schemas\/phone-extension"}],"description":"The extension which is used as identifier for the presence status.","type":"string","title":"ExtensionPresenceId"},"special-extension-typed-reference":{"allOf":[{"$ref":"#\/components\/schemas\/special-extension-typed-reference-optional"},{"type":"object","nullable":false}],"title":"SpecialExtensionTypedReference"},"extension-presence-owner":{"title":"ExtensionPresenceOwner","discriminator":{"propertyName":"type","mapping":{"special_extension":"#\/components\/schemas\/special-extension-typed-reference","user":"#\/components\/schemas\/user-typed-reference-deprecated"}},"oneOf":[{"$ref":"#\/components\/schemas\/user-typed-reference-deprecated"},{"$ref":"#\/components\/schemas\/special-extension-typed-reference"}]},"message-type":{"title":"MessageType","enum":["SMS","MMS","WhatsAppText","WhatsAppMedia"],"type":"string"},"extension-presence":{"title":"ExtensionPresence","type":"object","required":["id","extension","presence_owner","presence_status"],"properties":{"extension":{"$ref":"#\/components\/schemas\/phone-extension"},"presence_status":{"allOf":[{"$ref":"#\/components\/schemas\/extension-presence-status"}],"description":"The presence status of this extension. Set to `online` if there is at least one active registration against this extension in net2phone's Registrar."},"presence_owner":{"$ref":"#\/components\/schemas\/extension-presence-owner"},"presence_status_last_changed_at":{"description":"The time at which the `presence_status` of this extension was changed (determined from the SIP registrations). Set to `null` if there are no sip registrations found against the associated `extension`.","type":"string","nullable":true,"format":"date-time"},"id":{"$ref":"#\/components\/schemas\/extension-presence-id"}}},"campaign-registry-campaign-sharing-rejection-reason":{"title":"CampaignRegistryCampaignSharingRejectionReason","type":"object","required":["reason"],"properties":{"reason":{"description":"Summary description of this campaign sharing rejection reason.","type":"string","minLength":1,"maxLength":4000,"example":"We require more specific description and samples"}}},"e164-phone-number-no-plus":{"pattern":"^[1-9]\\d{5,14}$","description":"Phone number in E.164 international format without a leading \"+\" character.","type":"string","example":"15307636905","title":"E164PhoneNumberNoPlus"},"message-origin":{"title":"MessageOrigin","description":"Specifies the type of the sender. Currently, only `external` origin is supported which means some custom phone number outside of the net2phone account.","type":"string","enum":["external"]},"channel-conversation-item":{"title":"ChannelConversationItem","discriminator":{"propertyName":"type","mapping":{"conversation_description_changed":"#\/components\/schemas\/conversation-description-changed","conversation_members_removed":"#\/components\/schemas\/conversation-members-removed","chat_message":"#\/components\/schemas\/chat-message","conversation_created":"#\/components\/schemas\/conversation-created","text_message":"#\/components\/schemas\/chat-text-message","conversation_members_added":"#\/components\/schemas\/conversation-members-added","conversation_name_changed":"#\/components\/schemas\/conversation-name-changed","huddle_conference_invitation_message":"#\/components\/schemas\/huddle-conference-invitation-message"}},"oneOf":[{"$ref":"#\/components\/schemas\/conversation-created"},{"$ref":"#\/components\/schemas\/conversation-description-changed"},{"$ref":"#\/components\/schemas\/conversation-members-added"},{"$ref":"#\/components\/schemas\/conversation-members-removed"},{"$ref":"#\/components\/schemas\/conversation-name-changed"},{"$ref":"#\/components\/schemas\/huddle-conference-invitation-message"},{"$ref":"#\/components\/schemas\/chat-text-message"},{"$ref":"#\/components\/schemas\/chat-message"}]},"message-target":{"title":"MessageTarget","description":"Describes the type of the entity assigned to a phone number receiving the message.","type":"string","x-n2p-enum":{"values":[{"description":"The phone number receiving the message belongs to a user.","name":"User","value":"user"},{"description":"The phone number receiving the message belongs to a department.","name":"Department","value":"department"},{"description":"The phone number receiving the message belongs to account. E.g. the number can belong to a ring group or be unassigned.","name":"Account","value":"account"}],"name":"MessageTarget","modelAsString":false},"enum":["user","department","account"]},"cursor-page-of-extension-presence":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-page"},{"required":["items"],"type":"object","properties":{"items":{"items":{"$ref":"#\/components\/schemas\/extension-presence"},"type":"array"}}}],"title":"CursorPageOfExtensionPresence"},"channel-conversation-create-item-command":{"title":"ChannelConversationCreateItemCommand","type":"object","properties":{"attachments":{"items":{"$ref":"#\/components\/schemas\/chat-message-attachment-id-reference"},"type":"array"},"content":{"description":"Text content of the sent message.","type":"string"}}},"sip-registration-status":{"title":"SipRegistrationStatus","description":"The status of this particular registration of the associated extension.","type":"string","x-n2p-enum":{"values":[{"name":"Active","description":"The registration is currently active with the net2phone's Registrar.","value":"active"},{"name":"Inactive","description":"The registration is not currently active with the net2phone's Registrar.","value":"inactive"}],"name":"SipRegistrationStatus","modelAsString":false},"enum":["active","inactive"]},"message-content":{"title":"MessageContent","description":"The content of a message. For SMS\/MMS messages, media files are included as URLs and separated using \";\" character. For WhatsAppText, contains the plain text of the message. For WhatsAppMedia, contains the URL of the media file.","type":"string","minLength":1,"example":"Leaves; https:\/\/s3.amazonaws.com\/iqntmms02\/bh2IwkIwUGWXzzA9Brgt.jpeg"},"port-optional":{"title":"PortOptional","description":"Port number.","minimum":1,"type":"integer","maximum":65535,"nullable":true,"format":"int32"},"webhook-message":{"title":"WebhookMessage","type":"object","required":["conversation_id","message_id","type","originated","terminated","origin","target","content","from_user_id"],"properties":{"conversation_id":{"$ref":"#\/components\/schemas\/conversation-id-2"},"content_type":{"description":"MIME type of the media file. Present only for WhatsAppMedia messages.","type":"string","example":"image\/jpeg"},"originated":{"allOf":[{"$ref":"#\/components\/schemas\/e164-phone-number-no-plus"},{"description":"The sender's phone number."}]},"terminated":{"allOf":[{"$ref":"#\/components\/schemas\/e164-phone-number-no-plus"},{"description":"The receiver's phone number."}]},"target":{"$ref":"#\/components\/schemas\/message-target"},"from_user_id":{"allOf":[{"$ref":"#\/components\/schemas\/messenger-uuid"},{"description":"Internal identifier of the conversation participant, including external phone numbers not belonging to the net2phone account."}]},"type":{"$ref":"#\/components\/schemas\/message-type"},"content":{"$ref":"#\/components\/schemas\/message-content"},"origin":{"$ref":"#\/components\/schemas\/message-origin"},"message_id":{"$ref":"#\/components\/schemas\/conversation-event-id"},"caption":{"description":"Optional text caption accompanying a WhatsApp media message.","type":"string"}}},"network-address":{"title":"NetworkAddress","description":"The network address of a client\/server.","type":"object","properties":{"port":{"$ref":"#\/components\/schemas\/port"},"host":{"description":"The network ip address\/domain-name of the client\/server.","type":"string","example":"52.43.71.145"}},"nullable":true},"sip-registration":{"title":"SipRegistration","type":"object","required":["id","registered_at_time","expires_at_time","registration_status","extension"],"properties":{"registration_status":{"$ref":"#\/components\/schemas\/sip-registration-status"},"sip_client_private_address":{"allOf":[{"$ref":"#\/components\/schemas\/network-address"}],"description":"The private address of the SIP client (if detected)."},"sip_server_address":{"allOf":[{"$ref":"#\/components\/schemas\/network-address"}],"description":"The SIP server\/proxy address in which this registration exist."},"user_agent":{"description":"The `User-Agent` header value from the SIP REGISTER request.","type":"string","example":"Zoiper 1.2.0"},"extension":{"allOf":[{"$ref":"#\/components\/schemas\/phone-extension"}],"description":"The extension associated with this registration."},"mac_address":{"description":"The (M)edia (A)ccess (C)ontrol address of a device associated with the SIP request.","type":"string","example":"2E4FC86B3B0A","nullable":true},"sip_client_public_address":{"allOf":[{"$ref":"#\/components\/schemas\/network-address"}],"description":"The public address of the SIP client."},"expires_at_time":{"description":"The time at which the current registration expires. Set to `null` if the registration is not currently active.","type":"string","nullable":true,"format":"date-time"},"registered_at_time":{"description":"The time when this `extension` was last registered with net2phone's call server from the associated `user_agent`.","type":"string","format":"date-time"},"id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"The unique id of this sip registration."}}},"set-voice-conversation-template-command":{"title":"SetVoiceConversationTemplateCommand","type":"object","required":["virtual_agent_id","voice_conversation_template_id"],"properties":{"virtual_agent_id":{"$ref":"#\/components\/schemas\/virtual-agent-id"},"voice_conversation_template_id":{"$ref":"#\/components\/schemas\/voice-conversation-template-id"}}},"conflict-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["conflict_error"],"type":"string","nullable":false}}}],"example":{"type":"conflict_error","status_code":409,"message":"Call recording with id '25' in conflict state.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"ConflictError"},"set-messaging-assignment-command":{"title":"SetMessagingAssignmentCommand","type":"object","required":["virtual_agent_id"],"properties":{"virtual_agent_id":{"$ref":"#\/components\/schemas\/virtual-agent-id"}}},"limits-quota":{"title":"LimitsQuota","description":"A server-enforced limit that applies to the whole account, and the tenant's current usage against it.","type":"object","required":["limit","used"],"properties":{"used":{"description":"The tenant's current usage against limit.","type":"integer","example":12,"minimum":0,"format":"int64"},"limit":{"description":"The value the server enforces for this quota.","type":"integer","example":100,"minimum":0,"format":"int64"}}},"integer-department-id":{"title":"IntegerDepartmentId","description":"Unique identifier of the department within account.","type":"integer","example":42,"format":"int32"},"string-id":{"title":"StringId","description":"Unique identifier of the resource (entity) within an account.","type":"string","minLength":1,"example":"1"},"webhook-target-department":{"title":"WebhookTargetDepartment","description":"Describes a department related to a webhook event.","type":"object","additionalProperties":false,"required":["department_id","account_id","department"],"properties":{"department_id":{"$ref":"#\/components\/schemas\/integer-department-id"},"account_id":{"$ref":"#\/components\/schemas\/integer-account-id"},"department":{"description":"The display name of the department.","type":"string","example":"Marketing"}}},"conversation-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the conversation.","example":"12345","title":"ConversationId"},"limits-quota-scope":{"title":"LimitsQuotaScope","description":"What one instance of a scoped quota's usage applies to - one virtual agent, or one MCP server.","type":"string","enum":["virtual_agent","mcp_server"]},"conversation-id-reference":{"title":"ConversationIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/conversation-id"}}},"created-at-time":{"title":"CreatedAtTime","description":"The creation timestamp of a resource.","type":"string","nullable":true,"format":"date-time"},"limits-scoped-quota":{"title":"LimitsScopedQuota","description":"A server-enforced limit whose usage is tracked separately per instance of another resource (e.g. each virtual agent's own voice conversation templates). There is no single combined usage number for the account - check instances for the current usage of each individual instance.","type":"object","required":["limit","scope","instances"],"properties":{"limit":{"description":"The value the server enforces for this quota, per instance.","type":"integer","example":25,"minimum":0,"format":"int64"},"scope":{"$ref":"#\/components\/schemas\/limits-quota-scope"},"instances":{"description":"Per-instance usage breakdown. Always present, empty when there are no instances yet.","type":"array","items":{"$ref":"#\/components\/schemas\/limits-quota-instance"}}}},"cursor-page-of-sip-registration":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-page"},{"required":["items"],"type":"object","properties":{"items":{"items":{"$ref":"#\/components\/schemas\/sip-registration"},"type":"array"}}}],"title":"CursorPageOfSipRegistration"},"audit-actor":{"title":"AuditActor","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/audit-actor-id"},"name":{"example":"John Doe","type":"string"},"email":{"example":"john.doe@example.com","type":"string","format":"email"}},"nullable":true},"message-sent-type":{"title":"MessageSentType","enum":["SMS","MMS","WhatsAppText","WhatsAppMedia","WhatsAppTextTemplate"],"type":"string"},"special-extension-callee-optional":{"title":"SpecialExtensionCalleeOptional","type":"object","required":["type","special_extension"],"properties":{"special_extension":{"$ref":"#\/components\/schemas\/special-extension-reference"},"type":{"enum":["special_extension"],"type":"string"}},"nullable":true},"message-sent-originating-entity-type":{"title":"MessageSentOriginatingEntityType","description":"The type of the entity that owns the phone number from which the message was sent.","type":"string","x-n2p-enum":{"values":[{"description":"The phone number is assigned to a specific user.","name":"User","value":"user"},{"description":"The phone number is assigned to a department.","name":"Department","value":"department"},{"description":"The phone number is assigned to the account (e.g. a ring group number or unassigned number).","name":"Account","value":"account"}],"name":"OriginatingEntityType","modelAsString":false},"enum":["user","department","account"]},"limits-quotas":{"title":"LimitsQuotas","description":"Every quota that can fail a create, keyed by resource.","type":"object","required":["virtual_agents","tools","knowledge_bases","phone_numbers","mcp_servers","knowledge_base_storage_bytes","url_crawl_bytes","voice_conversation_templates","mcp_tool_configurations"],"properties":{"virtual_agents":{"allOf":[{"$ref":"#\/components\/schemas\/limits-quota"}],"description":"The number of virtual agents on the account."},"tools":{"allOf":[{"$ref":"#\/components\/schemas\/limits-quota"}],"description":"The number of tools on the account."},"phone_numbers":{"allOf":[{"$ref":"#\/components\/schemas\/limits-quota"}],"description":"The number of phone numbers on the account."},"knowledge_base_storage_bytes":{"allOf":[{"$ref":"#\/components\/schemas\/limits-quota"}],"description":"The total size in bytes of data source content stored across an account's knowledge bases."},"url_crawl_bytes":{"allOf":[{"$ref":"#\/components\/schemas\/limits-quota"}],"description":"Cumulative volume of text extracted by URL data imports over the lifetime of the account. This value is not reduced when the imported data sources are deleted; contact support to have it reset."},"mcp_tool_configurations":{"allOf":[{"$ref":"#\/components\/schemas\/limits-scoped-quota"}],"description":"The number of tool configurations on each MCP server. Scoped per MCP server - see instances."},"mcp_servers":{"allOf":[{"$ref":"#\/components\/schemas\/limits-quota"}],"description":"The number of MCP servers on the account."},"knowledge_bases":{"allOf":[{"$ref":"#\/components\/schemas\/limits-quota"}],"description":"The number of knowledge bases on the account."},"voice_conversation_templates":{"allOf":[{"$ref":"#\/components\/schemas\/limits-scoped-quota"}],"description":"The number of voice conversation templates configured on each virtual agent. Scoped per virtual agent - see instances."}}},"virtual-agent-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the Virtual Agent.","example":"12345","title":"VirtualAgentId"},"webhook-subscription-ai-agent":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-subscription-id-reference"},{"$ref":"#\/components\/schemas\/create-webhook-subscription-command-base"},{"$ref":"#\/components\/schemas\/timestamp-audit-fields-optional"},{"$ref":"#\/components\/schemas\/user-audit-fields-optional"},{"required":["platform"],"type":"object","properties":{"secret":{"$ref":"#\/components\/schemas\/webhook-subscription-secret"},"updated_by_user":{"readOnly":true,"description":"The ID of the authenticated user who last updated the webhook subscription. Populated automatically by the server.","allOf":[{"$ref":"#\/components\/schemas\/string-id-nullable"}]},"owner_type":{"$ref":"#\/components\/schemas\/webhook-subscription-owner-type"},"platform":{"description":"The platform this webhook subscription belongs to.","type":"string","readOnly":true,"enum":["ai_agent"]},"created_by_user":{"readOnly":true,"description":"The ID of the authenticated user who created the webhook subscription. Populated automatically by the server.","allOf":[{"$ref":"#\/components\/schemas\/string-id-nullable"}]},"event_type_filter":{"$ref":"#\/components\/schemas\/webhook-subscription-event-type-filter"},"scope_filter":{"$ref":"#\/components\/schemas\/webhook-subscription-virtual-agent-filter"}}}],"title":"WebhookSubscriptionAiAgent"},"conversation-transport":{"title":"ConversationTransport","description":"The media transport of a conversation.","type":"string","enum":["chat","inbound_voice","messaging"]},"originating-entity":{"title":"OriginatingEntity","description":"The entity that owns the phone number from which the message was sent.","type":"object","required":["type","id"],"properties":{"type":{"$ref":"#\/components\/schemas\/message-sent-originating-entity-type"},"id":{"description":"The identifier of the entity that owns the originating phone number.","type":"integer"}}},"webhook-subscription":{"title":"WebhookSubscription","discriminator":{"propertyName":"platform","mapping":{"pbx":"#\/components\/schemas\/webhook-subscription-pbx","ai_agent":"#\/components\/schemas\/webhook-subscription-ai-agent"}},"oneOf":[{"$ref":"#\/components\/schemas\/webhook-subscription-pbx"},{"$ref":"#\/components\/schemas\/webhook-subscription-ai-agent"}]},"timestamp-audit-fields":{"title":"TimestampAuditFields","type":"object","required":["created_at_time"],"properties":{"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"created_at_time":{"allOf":[{"type":"string","nullable":false},{"$ref":"#\/components\/schemas\/created-at-time"}]}},"nullable":true},"webhook-message-content-parts-button":{"title":"WebhookMessageContentPartsButton","type":"object","required":["type","text"],"properties":{"text":{"description":"Display text of the button.","type":"string"},"type":{"enum":["quick_reply","url","phone_number","copy_code","otp"],"type":"string","description":"The type of the template button."}}},"create-huddle-room-command":{"allOf":[{"$ref":"#\/components\/schemas\/huddle-room-common"}],"title":"CreateHuddleRoomCommand"},"webhook-subscription-user-filter-options":{"title":"WebhookSubscriptionUserFilterOptions","description":"Restricts which PBX events are reported to the `endpoint_url`. If omitted or set to `null`, events of all users and all calls are reported, which is only available for users with `admin` role.","type":"object","properties":{"call_scope":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-call-scope"}],"description":"The kind of calls to report. Combined with `users`: only events of these users and of this kind of calls are reported. If omitted or set to `null`, both internal and external calls are reported. Applies to call events only; events not related to a call (e.g. `message_received`, `message_sent`) are always reported. The `scope_filter` is replaced as a whole on update, so omitting `call_scope` removes the restriction."},"users":{"description":"The user accounts to subscribe for. Only events related to these users will be reported to the `endpoint_url`. If omitted or empty, all users are assumed, which is only available for users with `admin` role. Webhook subscriptions being created by users with `regular` role must include the same user in `users`.","type":"array","items":{"$ref":"#\/components\/schemas\/user-id-reference"}}},"nullable":true},"phone-number-phone-number":{"pattern":"^\\+[1-9]\\d{1,14}$","description":"A phone number in E.164 format.","type":"string","maxLength":15,"example":"+123456789","nullable":false,"title":"PhoneNumberPhoneNumber"},"user-typed-reference":{"allOf":[{"$ref":"#\/components\/schemas\/user-typed-reference-optional"},{"type":"object","nullable":false}],"title":"UserTypedReference"},"department-typed-reference-optional":{"allOf":[{"type":"object","required":["type"],"nullable":true,"properties":{"type":{"enum":["department"],"type":"string"}}},{"$ref":"#\/components\/schemas\/department-reference-optional"}],"title":"DepartmentTypedReferenceOptional"},"conversation-ended-at-time":{"title":"ConversationEndedAtTime","description":"The timestamp when the conversation ended.","type":"string","nullable":true,"format":"date-time"},"department-typed-reference":{"allOf":[{"$ref":"#\/components\/schemas\/department-typed-reference-optional"},{"type":"object","nullable":false}],"title":"DepartmentTypedReference"},"webhook-message-content-parts":{"title":"WebhookMessageContentParts","description":"Structured content parts of a WhatsApp template message. Contains the rendered header, body, footer, and button definitions. Present only for WhatsApp template message types.","type":"object","properties":{"body":{"description":"Rendered body text of the template.","type":"string"},"header":{"description":"Rendered header text of the template.","type":"string"},"buttons":{"items":{"$ref":"#\/components\/schemas\/webhook-message-content-parts-button"},"type":"array","description":"Buttons attached to the template message."},"footer":{"description":"Footer text of the template.","type":"string"}}},"limits-length-unit":{"title":"LimitsLengthUnit","description":"The unit a field limit's max is measured in. `characters` counts Unicode code points, so an accented letter or a single emoji counts as one; `bytes` counts the value's UTF-8 encoding, which is larger than the code-point count for non-ASCII text.","type":"string","enum":["characters","bytes"]},"blocked-phone-number-pattern-already-exist-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["blocked_phone_number_pattern_already_exist_error"],"type":"string","nullable":false}}}],"example":{"type":"blocked_phone_number_pattern_already_exist_error","status_code":409,"message":"One of the phone number pattern you are trying to add already exist.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"BlockedPhoneNumberPatternAlreadyExistError"},"create-webhook-subscription-ai-agent-command":{"allOf":[{"$ref":"#\/components\/schemas\/create-webhook-subscription-command-base"},{"required":["platform"],"type":"object","properties":{"scope_filter":{"$ref":"#\/components\/schemas\/webhook-subscription-virtual-agent-filter-options"},"platform":{"enum":["ai_agent"],"type":"string"}}}],"title":"CreateWebhookSubscriptionAiAgentCommand"},"limits-field-limit":{"title":"LimitsFieldLimit","description":"One server-enforced length limit and the unit it is counted in.","type":"object","required":["max","unit"],"properties":{"unit":{"$ref":"#\/components\/schemas\/limits-length-unit"},"max":{"description":"The maximum length the server enforces for this field.","minimum":0,"example":100,"type":"integer"}}},"available-phone-number-lookup-type":{"title":"AvailablePhoneNumberLookupType","description":"The type of search you would like to perform. When set to `shuffled` the result set will not strictly look for consecutive numbers. When set to `consecutive`, a minimum `quantity` of 2 will be enforced and the result set will have consecutive numbers.","type":"string","x-n2p-enum":{"values":[{"name":"Shuffled","description":"Tells the search should return random available phone numbers.","value":"shuffled"},{"name":"Consecutive","description":"Tells the search should return consecutive phone numbers.","value":"consecutive"}],"name":"AvailablePhoneNumberLookupType","modelAsString":false},"enum":["shuffled","consecutive"],"default":"shuffled"},"limits-field-limits":{"title":"LimitsFieldLimits","description":"Server-enforced length limits for fields across the API, grouped by resource (e.g. tool.display_name, mcp_server.header_value). Each limit gives both a maximum length and the unit it's measured in.","type":"object","required":["virtual_agent","knowledge_base","data_source","data_import","phone_number","tool","mcp_server","mcp_tool_configuration","voice_conversation_template","voice_transfer_scenario","conversation_message","conversation_supplied_session","tts_sample"],"properties":{"mcp_server":{"required":["display_name","description","server_url","header_name","header_value"],"type":"object","properties":{"display_name":{"$ref":"#\/components\/schemas\/limits-field-limit"},"description":{"$ref":"#\/components\/schemas\/limits-field-limit"},"header_value":{"$ref":"#\/components\/schemas\/limits-field-limit"},"server_url":{"$ref":"#\/components\/schemas\/limits-field-limit"},"header_name":{"$ref":"#\/components\/schemas\/limits-field-limit"}}},"mcp_tool_configuration":{"required":["tool_name","description","input_mapping_name","input_mapping_value","response_context","response_transform","response_system_message"],"type":"object","properties":{"description":{"$ref":"#\/components\/schemas\/limits-field-limit"},"response_context":{"$ref":"#\/components\/schemas\/limits-field-limit"},"response_transform":{"$ref":"#\/components\/schemas\/limits-field-limit"},"input_mapping_name":{"$ref":"#\/components\/schemas\/limits-field-limit"},"response_system_message":{"$ref":"#\/components\/schemas\/limits-field-limit"},"input_mapping_value":{"$ref":"#\/components\/schemas\/limits-field-limit"},"tool_name":{"$ref":"#\/components\/schemas\/limits-field-limit"}}},"voice_transfer_scenario":{"required":["display_name","scenario"],"type":"object","properties":{"display_name":{"$ref":"#\/components\/schemas\/limits-field-limit"},"scenario":{"$ref":"#\/components\/schemas\/limits-field-limit"}}},"tts_sample":{"required":["text"],"type":"object","properties":{"text":{"$ref":"#\/components\/schemas\/limits-field-limit"}}},"conversation_message":{"required":["content"],"type":"object","properties":{"content":{"allOf":[{"$ref":"#\/components\/schemas\/limits-field-limit"}],"description":"Applies to chat, messaging, and AI Builder conversation messages, and to submitted tool results."}}},"phone_number":{"required":["display_name"],"type":"object","properties":{"display_name":{"$ref":"#\/components\/schemas\/limits-field-limit"}}},"knowledge_base":{"required":["display_name","description"],"type":"object","properties":{"display_name":{"$ref":"#\/components\/schemas\/limits-field-limit"},"description":{"$ref":"#\/components\/schemas\/limits-field-limit"}}},"data_source":{"required":["content"],"type":"object","properties":{"content":{"$ref":"#\/components\/schemas\/limits-field-limit"}}},"tool":{"required":["display_name","description","input_name","input_description","request_url","request_header_name","request_header_value","request_body","response_context","response_transform","response_system_message"],"type":"object","properties":{"display_name":{"$ref":"#\/components\/schemas\/limits-field-limit"},"description":{"$ref":"#\/components\/schemas\/limits-field-limit"},"request_url":{"$ref":"#\/components\/schemas\/limits-field-limit"},"request_header_name":{"$ref":"#\/components\/schemas\/limits-field-limit"},"request_header_value":{"$ref":"#\/components\/schemas\/limits-field-limit"},"request_body":{"$ref":"#\/components\/schemas\/limits-field-limit"},"response_context":{"$ref":"#\/components\/schemas\/limits-field-limit"},"response_transform":{"$ref":"#\/components\/schemas\/limits-field-limit"},"input_description":{"$ref":"#\/components\/schemas\/limits-field-limit"},"response_system_message":{"$ref":"#\/components\/schemas\/limits-field-limit"},"input_name":{"allOf":[{"$ref":"#\/components\/schemas\/limits-field-limit"}],"description":"Applies to both a tool's top-level input names and nested object schema property names."}}},"virtual_agent":{"required":["display_name","description","prompt"],"type":"object","properties":{"display_name":{"$ref":"#\/components\/schemas\/limits-field-limit"},"description":{"$ref":"#\/components\/schemas\/limits-field-limit"},"prompt":{"$ref":"#\/components\/schemas\/limits-field-limit"}}},"data_import":{"required":["display_name"],"type":"object","properties":{"display_name":{"$ref":"#\/components\/schemas\/limits-field-limit"}}},"conversation_supplied_session":{"required":["from_number","size"],"type":"object","properties":{"from_number":{"$ref":"#\/components\/schemas\/limits-field-limit"},"size":{"allOf":[{"$ref":"#\/components\/schemas\/limits-field-limit"}],"description":"The maximum size of the whole `session` object on a create-conversation request, measured on its JSON encoding rather than on the bytes as sent, so indentation does not count against it."}}},"voice_conversation_template":{"required":["display_name","description","initial_greeting"],"type":"object","properties":{"display_name":{"$ref":"#\/components\/schemas\/limits-field-limit"},"description":{"$ref":"#\/components\/schemas\/limits-field-limit"},"initial_greeting":{"$ref":"#\/components\/schemas\/limits-field-limit"}}}}},"conversation-supplied-session":{"title":"ConversationSuppliedSession","description":"Session values supplied by the API caller when the conversation is created, exposed to the Virtual Agent's jq expressions as `.session.from_number` and `.session.to_number`. They let a chat conversation exercise the same agent logic an inbound call does.\n\nEvery key is optional and independent: supplying one does not require the other. A key that is not supplied is absent from `.session` rather than empty, exactly as on a call where the network did not provide it, so a jq expression that reads one should carry a fallback, for example `.session.from_number \/\/ \"\"`. The limits endpoint publishes the `from_number` length limit and the limit on the size of the whole object under `field_limits.conversation_supplied_session`.","type":"object","properties":{"from_number":{"description":"The calling number, exposed to jq expressions as `.session.from_number`. Not format checked, because a call itself can carry \"Anonymous\" when the caller has turned off caller ID, an extension, or another caller-id format, and the same values are accepted here.","type":"string","maxLength":128,"example":"+123456789"},"to_number":{"allOf":[{"$ref":"#\/components\/schemas\/phone-number-phone-number"}],"description":"The called number, exposed to jq expressions as `.session.to_number`."}}},"voicemail-reference-optional":{"allOf":[{"$ref":"#\/components\/schemas\/timestamp-audit-fields"},{"description":"Voicemail left for a given call. Can be omitted or set to `null` if there is no voicemail for this call detail record.","type":"object","required":["id","duration_seconds","owner","status"],"nullable":true,"properties":{"duration_seconds":{"description":"Duration of the voicemail audio in seconds.","type":"integer","example":30,"format":"int32"},"status":{"$ref":"#\/components\/schemas\/voicemail-status"},"owner":{"$ref":"#\/components\/schemas\/voicemail-owner"},"id":{"$ref":"#\/components\/schemas\/voicemail-id"}}}],"title":"VoicemailReferenceOptional"},"area-code":{"pattern":"^\\d{1,3}$","description":"The area code of the Phone Number.","type":"string","minLength":1,"example":"516","nullable":false,"title":"AreaCode"},"region-code-optional":{"pattern":"^[A-Z]{2}$","description":"Two-letter region code as defined by [Unicode CLDR](https:\/\/www.iana.org\/assignments\/language-subtag-registry\/language-subtag-registry). For example, `US` stands for United States.","type":"string","example":"US","nullable":true,"title":"RegionCodeOptional"},"webhook-target-user":{"title":"WebhookTargetUser","description":"Describes a user related to a webhook event.","type":"object","additionalProperties":false,"required":["id","account_id","name"],"properties":{"account_id":{"$ref":"#\/components\/schemas\/integer-account-id"},"name":{"description":"The full display name of the user.","type":"string","example":"John Doe"},"email":{"type":"string","example":"john.doe@example.com","nullable":true,"format":"email"},"id":{"$ref":"#\/components\/schemas\/integer-user-id"}}},"voice-language-code":{"title":"VoiceLanguageCode","description":"The BCP 47 language code for the voice conversation.","type":"string","example":"en-US"},"region-code":{"allOf":[{"$ref":"#\/components\/schemas\/region-code-optional"},{"example":"US","nullable":false}],"title":"RegionCode"},"tts-voice-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the TTS Voice ID.","example":"12345","title":"TtsVoiceId"},"click-to-call-id":{"title":"ClickToCallId","description":"The unique id of the `Click to Call` API request. The same is provided in call-related webhook events as `c2c_api_request_id`.","type":"string","minLength":1,"example":"932b34fc-fb110c6bc859c542"},"voice-conversation-template-language":{"title":"VoiceConversationTemplateLanguage","type":"object","required":["language_code","tts_voice_id"],"properties":{"language_code":{"$ref":"#\/components\/schemas\/voice-language-code"},"tts_voice_id":{"$ref":"#\/components\/schemas\/tts-voice-id"}}},"huddle-dial-in-phone-number-id":{"allOf":[{"$ref":"#\/components\/schemas\/e164-phone-number-no-plus"},{"description":"The phone number that can be used to dial in to Huddle conference room.","example":"15307636905"}],"title":"HuddleDialInPhoneNumberId"},"click-to-call-info":{"title":"ClickToCallInfo","description":"This is present in a webhook event, if the call is initiated via `Click to Call` API.","type":"object","required":["c2c_api_request_id","c2c_client_id"],"properties":{"c2c_client_id":{"description":"The client id from which the `Click to Call` is triggered.","type":"string","example":"n2p-api"},"c2c_api_request_id":{"$ref":"#\/components\/schemas\/click-to-call-id"}}},"huddle-dial-in-phone-number":{"title":"HuddleDialInPhoneNumber","type":"object","required":["id","phone_number","region_code"],"properties":{"phone_number":{"$ref":"#\/components\/schemas\/huddle-dial-in-phone-number-id"},"region_code":{"$ref":"#\/components\/schemas\/region-code"},"id":{"$ref":"#\/components\/schemas\/huddle-dial-in-phone-number-id"}}},"available-phone-number-id":{"allOf":[{"$ref":"#\/components\/schemas\/phone-number-id-2"}],"description":"The E164 Phone Number used as unique identifier of the Available Phone Number resource.","title":"AvailablePhoneNumberId"},"messaging-enabled-phone-number-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique ID of the messaging enabled phone number.","title":"MessagingEnabledPhoneNumberId"},"eoc-reason":{"title":"EocReason","description":"The reason for the end of conversation.","type":"string","enum":["normal","error","bot_detects_completion","transfer","max_call_length_exceeded",null],"nullable":true},"available-phone-number":{"title":"AvailablePhoneNumber","type":"object","required":["id","e164_phone_number"],"properties":{"e164_phone_number":{"$ref":"#\/components\/schemas\/available-phone-number-id"},"id":{"$ref":"#\/components\/schemas\/available-phone-number-id"}}},"e164-phone-number-with-plus":{"pattern":"^\\+[1-9]\\d{5,14}$","description":"Phone number in E.164 international format which includes \"+\" character.","type":"string","example":"+15307636905","title":"E164PhoneNumberWithPlus"},"conversation-recording":{"title":"ConversationRecording","description":"Recording of a conversation.","type":"object","properties":{"last_uploaded_at_time":{"description":"The timestamp when the conversation recording was last uploaded.","type":"string","nullable":true,"format":"date-time"},"status":{"description":"The status of the conversation recording.","type":"string","enum":["pending","available"]}},"nullable":true},"collection-of-available-phone-numbers":{"title":"CollectionOfAvailablePhoneNumbers","type":"object","required":["items"],"properties":{"items":{"items":{"$ref":"#\/components\/schemas\/available-phone-number"},"type":"array"}}},"hidden-phone-number":{"title":"HiddenPhoneNumber","description":"The placeholder value that can be used when a phone number was hidden for the outgoing call.","type":"string","enum":["restricted","Unknown"]},"messaging-enabled-phone-number-channel":{"title":"MessagingEnabledPhoneNumberChannel","discriminator":{"propertyName":"type","mapping":{"whatsapp":"#\/components\/schemas\/messaging-enabled-phone-number-channel-whatsapp","sms_mms":"#\/components\/schemas\/messaging-enabled-phone-number-channel-sms-mms"}},"oneOf":[{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel-sms-mms"},{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel-whatsapp"}]},"phone-number-assignment-status":{"title":"PhoneNumberAssignmentStatus","description":"Describes if a Phone Number is assigned to other callable resources.","type":"string","x-n2p-enum":{"values":[{"name":"Assigned","description":"The Phone Number is assigned to other callable resource.","value":"assigned"},{"name":"Unassigned","description":"The Phone Number is not assigned to any callable resource.","value":"unassigned"}],"name":"PhoneNumberAssignmentStatus","modelAsString":false},"enum":["assigned","unassigned"]},"call-recording-reference":{"allOf":[{"$ref":"#\/components\/schemas\/timestamp-audit-fields"},{"type":"object","required":["id","status","duration_seconds","analytics_job_status"],"nullable":true,"properties":{"duration_seconds":{"description":"Duration of the call recording in seconds.","type":"integer","example":68,"format":"int32"},"id":{"$ref":"#\/components\/schemas\/call-recording-id"},"analytics_job_status":{"$ref":"#\/components\/schemas\/call-recording-analytics-job-status"},"status":{"$ref":"#\/components\/schemas\/call-recording-status"}}}],"title":"CallRecordingReference"},"conversation-voice-details":{"title":"ConversationVoiceDetails","description":"Details about a voice conversation.","type":"object","properties":{"transferred_to":{"description":"The number that the call was transferred to.","type":"string","nullable":true},"from":{"$ref":"#\/components\/schemas\/conversation-from"},"recording":{"$ref":"#\/components\/schemas\/conversation-recording"},"languages":{"description":"The languages supported by the Virtual Agent's Voice Conversation Template used in this Conversation.","type":"array","items":{"$ref":"#\/components\/schemas\/voice-conversation-template-language"}},"started_at_time":{"description":"The timestamp when the voice conversation started.","type":"string","nullable":true,"format":"date-time"},"ended_at_time":{"$ref":"#\/components\/schemas\/conversation-ended-at-time"},"eoc_reason":{"$ref":"#\/components\/schemas\/eoc-reason"},"to":{"$ref":"#\/components\/schemas\/phone-number-phone-number"}}},"phone-number-assignee":{"title":"PhoneNumberAssignee","description":"The callable resource to which the this Phone Number is assigned to. Set to `null` if the `assignment_status` is `unassigned`.","type":"object","anyOf":[{"$ref":"#\/components\/schemas\/user-typed-reference-optional"},{"$ref":"#\/components\/schemas\/department-typed-reference-optional"},{"$ref":"#\/components\/schemas\/ring-group-typed-reference-optional"},{"$ref":"#\/components\/schemas\/welcome-menu-typed-reference-optional"},{"$ref":"#\/components\/schemas\/special-extension-typed-reference-optional"},{"$ref":"#\/components\/schemas\/call-queue-typed-reference-optional"},{"$ref":"#\/components\/schemas\/virtual-fax-id-typed-reference-optional"}],"nullable":true,"discriminator":{"propertyName":"type","mapping":{"welcome_menu":"#\/components\/schemas\/welcome-menu-typed-reference-optional","call_queue":"#\/components\/schemas\/call-queue-typed-reference-optional","special_extension":"#\/components\/schemas\/special-extension-typed-reference-optional","department":"#\/components\/schemas\/department-typed-reference-optional","virtual_fax":"#\/components\/schemas\/virtual-fax-id-typed-reference-optional","user":"#\/components\/schemas\/user-typed-reference-optional","ring_group":"#\/components\/schemas\/ring-group-typed-reference-optional"}}},"voicemail-service-extension":{"pattern":"^\\*95$","type":"string","example":"*95","title":"VoicemailServiceExtension"},"call-detail-record":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-item-fields"},{"required":["id","call_activity_item","direction","result","caller","route","start_time","end_time","duration_seconds","created_at_time"],"type":"object","properties":{"from_normalized":{"$ref":"#\/components\/schemas\/normalized-call-endpoint"},"voicemail":{"$ref":"#\/components\/schemas\/voicemail-reference-optional"},"route":{"$ref":"#\/components\/schemas\/call-route"},"to_normalized":{"$ref":"#\/components\/schemas\/normalized-call-endpoint"},"result":{"$ref":"#\/components\/schemas\/call-result"},"caller":{"$ref":"#\/components\/schemas\/caller"},"caller_call_recording":{"allOf":[{"$ref":"#\/components\/schemas\/call-recording-reference"}],"description":"If you are an admin or the caller of this call detail record, you will be able to see the caller side of the recording here. Otherwise set to `null`."},"callee_call_recording":{"allOf":[{"$ref":"#\/components\/schemas\/call-recording-reference"}],"description":"If you are an admin or callee of this call, you will be able to see the callee side of the recording here. Otherwise set to `null`."},"id":{"$ref":"#\/components\/schemas\/call-detail-record-id"},"created_at_time":{"allOf":[{"description":"The time when the finished call is fully processed and saved as call detail record. This would typically be later than `end_time` of the call."},{"$ref":"#\/components\/schemas\/created-at-time"}]},"start_time":{"description":"Start time of the call formatted as [ISO 8601](https:\/\/en.wikipedia.org\/wiki\/ISO_8601) timestamp.","type":"string","example":"2022-06-01T07:20:00Z","format":"date-time"},"from":{"$ref":"#\/components\/schemas\/call-endpoint-optional"},"to":{"$ref":"#\/components\/schemas\/call-endpoint-optional"},"call_activity_item":{"$ref":"#\/components\/schemas\/call-activity-item-reference"},"duration_seconds":{"description":"Total duration of the call in seconds. If the call was picked-up, duration should be greater than zero. Note that the pick-up might happen automatically to play the voicemail or \"user is unavailable\" prompt. For calls with voicemails, this will include the duration of the voicemail.","type":"integer","example":30,"format":"int32"},"callee":{"$ref":"#\/components\/schemas\/callee"},"direction":{"$ref":"#\/components\/schemas\/call-direction"},"end_time":{"description":"End time of the call formatted as [ISO 8601](https:\/\/en.wikipedia.org\/wiki\/ISO_8601) timestamp. If the call resulted into a voicemail, this would be the time when the caller recorded it and disconnected the call.","type":"string","example":"2022-06-01T07:35:00Z","format":"date-time"}}}],"title":"CallDetailRecord"},"call-direction":{"title":"CallDirection","type":"string","x-n2p-enum":{"values":[{"name":"Inbound","description":"The call is classified as `inbound` in one of the following cases:\n* The call is initiated by an external (non net2phone) user.\n* For API responses (not in webhook payloads), the call is targeting the current user or his\/her assigned\ndepartments. The current user is referenced by the API access token.\n","value":"inbound"},{"name":"Outbound","description":"The call is classified as `outbound` if all of the conditions are true:\n* The call is initiated by the net2phone user.\n* For API responses (not in webhook payloads), the call is not classified as `inbound` based on the current user\nmaking the API request. E.g. all calls made between net2phone users, but not related to the current user are\n`outbound`. The current user is referenced by the API access token.\n","value":"outbound"}],"name":"CallDirection","modelAsString":false},"enum":["inbound","outbound"]},"phone-number-2":{"allOf":[{"$ref":"#\/components\/schemas\/timestamp-audit-fields"},{"$ref":"#\/components\/schemas\/user-audit-fields-optional"},{"description":"The Phone Number resource.","type":"object","required":["id","phone_number","assignment_status"],"properties":{"assignee":{"$ref":"#\/components\/schemas\/phone-number-assignee"},"phone_number":{"$ref":"#\/components\/schemas\/phone-number-id-2"},"assignment_status":{"$ref":"#\/components\/schemas\/phone-number-assignment-status"},"id":{"$ref":"#\/components\/schemas\/phone-number-id-2"}}}],"title":"PhoneNumber2"},"messaging-enabled-phone-numbers":{"title":"MessagingEnabledPhoneNumbers","type":"object","required":["items"],"properties":{"items":{"items":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number"},"type":"array"}}},"port-out-timeframe":{"title":"PortOutTimeframe","description":"How soon the customer intends to move the phone numbers to the gaining carrier.","type":"string","x-n2p-enum":{"values":[{"name":"As Soon As Possible","description":"The customer wants to port out immediately.","value":"as_soon_as_possible"},{"name":"Within One To Two Weeks","description":"The customer plans to port out within one or two weeks.","value":"within_one_to_two_weeks"},{"name":"One Month","description":"The customer plans to port out in about a month.","value":"one_month"}],"name":"PortOutTimeframe","modelAsString":false},"enum":["as_soon_as_possible","within_one_to_two_weeks","one_month"]},"interval-size":{"title":"IntervalSize","description":"The time step used to aggregate data points in the report's time-series section. Controls the \"density\" of the report (e.g., daily points vs. hourly points).","type":"string","x-n2p-enum":{"values":[{"name":"QuarterOfHour","description":"15-minute buckets. Recommended for \"Today\" or \"Yesterday\" ranges.","value":"quarter_of_hour"},{"name":"Hour","description":"60-minute buckets. Suitable for 24-hour or 7-day ranges.","value":"hour"},{"name":"Day","description":"24-hour buckets. Best for \"Month to date\" or long custom ranges.","value":"day"}],"name":"IntervalSize","modelAsString":false},"enum":["quarter_of_hour","hour","day"]},"call-source":{"title":"CallSource","type":"string","x-n2p-enum":{"values":[{"name":"Normal","description":"Indicates the call related to this webhook event is from webapp\/phone device.","value":"normal"},{"name":"Click To Call","description":"Indicates the call related to this webhook event is trigger from `Click to Call` API.","value":"click2call"}],"name":"CallSource","modelAsString":false},"enum":["normal","click2call"]},"phone-number-assignment-counters-optional":{"title":"PhoneNumberAssignmentCountersOptional","description":"Describes the current counters of Phone Numbers associated with each callable resource in your net2phone account. It will not interfere with the other filters applied in the request.","type":"object","required":["total_assigned_to_account_count","total_assigned_to_users_count","total_assigned_to_departments_count","total_assigned_to_ring_groups_count","total_assigned_to_welcome_menus_count","total_assigned_to_special_extensions_count"],"nullable":true,"properties":{"total_assigned_to_departments_count":{"description":"Describes the total number of Phone Numbers that are currently assigned to `Department` resources.","type":"integer","format":"int32"},"total_assigned_to_ring_groups_count":{"description":"Describes the total number of Phone Numbers that are currently assigned to `Ring Group` resources.","type":"integer","format":"int32"},"total_assigned_to_account_count":{"description":"Describes the total number of Phone Numbers that are currently added to your net2phone account but not assigned to any other callable resources.","type":"integer","format":"int32"},"total_assigned_to_welcome_menus_count":{"description":"Describes the total number of Phone Numbers that are currently assigned to `Welcome Menu` resources.","type":"integer","format":"int32"},"total_assigned_to_special_extensions_count":{"description":"Describes the total number of Phone Numbers that are currently assigned to `Special Extension` resources.","type":"integer","format":"int32"},"total_assigned_to_users_count":{"description":"Describes the total number of Phone Numbers that are currently assigned to `User` resources.","type":"integer","format":"int32"}}},"conversation-messaging-channel":{"title":"ConversationMessagingChannel","description":"The messaging channel used in a conversation.","type":"string","enum":["sms","whatsapp"]},"webhook-event-id":{"title":"WebhookEventId","description":"Unique ID per webhook notification.","type":"string","example":"9ebdf7fd-f310-48dd-90e6-ecfc68136886"},"conversation-messaging-details":{"title":"ConversationMessagingDetails","description":"Details about a messaging conversation.","type":"object","required":["channel"],"properties":{"channel":{"$ref":"#\/components\/schemas\/conversation-messaging-channel"}}},"anonymous-callers-blocking-settings":{"title":"AnonymousCallersBlockingSettings","type":"object","properties":{"block_level":{"$ref":"#\/components\/schemas\/anonymous-callers-block-level"}}},"create-port-out-request-command":{"title":"CreatePortOutRequestCommand","type":"object","required":["phone_numbers","port_reason","port_timeframe"],"properties":{"port_reason":{"$ref":"#\/components\/schemas\/port-out-reason"},"port_timeframe":{"$ref":"#\/components\/schemas\/port-out-timeframe"},"phone_numbers":{"description":"The phone numbers of the current account to get the port-out PINs for.","type":"array","minItems":1,"maxItems":100,"items":{"$ref":"#\/components\/schemas\/e164-phone-number-with-plus"}},"feedback":{"description":"Additional details about the port-out reason, as provided by the customer.","type":"string","nullable":true}}},"call-webhook-event-generic":{"allOf":[{"required":["originating_number","dialed_number","direction","call_source"],"type":"object","properties":{"originating_number":{"description":"Describes the number that started the call.","oneOf":[{"$ref":"#\/components\/schemas\/phone-extension"},{"$ref":"#\/components\/schemas\/e164-phone-number"},{"$ref":"#\/components\/schemas\/hidden-phone-number"}]},"dialed_number":{"description":"The recipient's number of the call.","oneOf":[{"$ref":"#\/components\/schemas\/phone-extension"},{"$ref":"#\/components\/schemas\/e164-phone-number"},{"$ref":"#\/components\/schemas\/pickup-feature-extension"},{"$ref":"#\/components\/schemas\/voicemail-service-extension"}]},"call_source":{"$ref":"#\/components\/schemas\/call-source"},"direction":{"$ref":"#\/components\/schemas\/call-direction"}}},{"$ref":"#\/components\/schemas\/webhook-event"}],"title":"CallWebhookEventGeneric"},"set-anonymous-callers-blocking-settings-for-account-command":{"title":"SetAnonymousCallersBlockingSettingsForAccountCommand","type":"object","properties":{"is_blocked_for_account":{"description":"Describes whether to block all incoming calls from anonymous callers at `account` level.","type":"boolean","nullable":false,"default":false}}},"agent-activity-bucket":{"allOf":[{"$ref":"#\/components\/schemas\/activity-report-bucket-common"},{"required":["agent"],"type":"object","properties":{"phone_number":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number"},"agent":{"$ref":"#\/components\/schemas\/user-actor"}}}],"title":"AgentActivityBucket"},"set-anonymous-callers-blocking-settings-for-current-user-command":{"title":"SetAnonymousCallersBlockingSettingsForCurrentUserCommand","type":"object","properties":{"is_blocked_for_current_user":{"description":"Describes whether to block all incoming calls from anonymous callers for the current user.","type":"boolean","nullable":false,"default":false}}},"usage":{"title":"Usage","description":"Usage tracking information for billing purposes.","type":"object","properties":{"billing":{"$ref":"#\/components\/schemas\/usage-billing-info"}}},"chat-message-attachment-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique chat message attachment identifier.","title":"ChatMessageAttachmentId"},"create-phone-number-command":{"title":"CreatePhoneNumberCommand","type":"object","required":["available_phone_number_id"],"properties":{"available_phone_number_id":{"$ref":"#\/components\/schemas\/available-phone-number-id"}}},"chat-text-message-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"Chat text message type.","type":"string","enum":["text_message"]}}},{"$ref":"#\/components\/schemas\/chat-message-id-reference"}],"example":{"type":"text_message","id":"42"},"title":"ChatTextMessageIdTypedReference","deprecated":true},"blocked-caller-blocked-at-level":{"title":"BlockedCallerBlockedAtLevel","description":"Describes if a caller is blocked at `account` level or `user` level.","type":"string","x-n2p-enum":{"values":[{"description":"The caller is blocked at account level.","name":"Account","value":"account"},{"description":"The caller is blocked at user level.","name":"User","value":"user"}],"name":"BlockedNumberBlockedAtLevel","modelAsString":false},"enum":["account","user"]},"conversation-summary":{"title":"ConversationSummary","description":"AI-generated summary of the conversation. Only present if the conversation has ended.","type":"object","properties":{"resolution":{"description":"A brief summary of the provided resolution, reached outcome, or next steps communicated to the user.","type":"string"},"reason_for_conversation":{"description":"A description of why the user initiated the conversation.","type":"string"},"customer_sentiment":{"description":"Customer sentiment label. If the sentiment rating cannot be determined then neutral value is default.","type":"string","enum":["very_positive","positive","neutral","negative","very_negative"]},"key_points":{"description":"A summary of the key points discussed in the conversation.","type":"string"}},"nullable":true},"collection-of-phone-number-activity-report":{"title":"CollectionOfPhoneNumberActivityReport","type":"object","required":["items","interval_size","iana_timezone_id"],"properties":{"interval_size":{"$ref":"#\/components\/schemas\/interval-size"},"items":{"items":{"$ref":"#\/components\/schemas\/phone-number-activity-bucket"},"type":"array"},"iana_timezone_id":{"$ref":"#\/components\/schemas\/iana-timezone-id-with-utc-default"}}},"call-webhook-event":{"allOf":[{"required":["call_id"],"type":"object","properties":{"click_to_call_info":{"$ref":"#\/components\/schemas\/click-to-call-info"},"call_id":{"description":"Unique id of the call.","type":"string","example":"ce3ba63d662ff8f9455da9f954f3b472"},"user_name":{"description":"Is provided for backwards compatibility with previous versions of webhooks only. **It’s strongly suggested that you avoid using this field.**.","type":"string","example":"Jane Doe","deprecated":true}}},{"$ref":"#\/components\/schemas\/call-webhook-event-generic"},{"$ref":"#\/components\/schemas\/webhook-event"}],"title":"CallWebhookEvent"},"phone-number-bound-message-activity-item-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"enum":["phone_number_bound_message_activity_item"],"type":"string"}}},{"$ref":"#\/components\/schemas\/activity-item-id-reference"}],"example":{"type":"phone_number_bound_message_activity_item","id":"mms-12222222222-13333333333-latest"},"title":"PhoneNumberBoundMessageActivityItemTypedReference"},"live-activity-bucket":{"title":"LiveActivityBucket","type":"object","required":["phone_number","current_open_dialogs_count","current_unassigned_dialogs_count","today"],"properties":{"current_open_dialogs_count":{"description":"Current number of dialogues in the \"Open\" state.","type":"integer"},"current_unassigned_dialogs_count":{"description":"Current number of \"Open\" dialogues that are not assigned to any agent.","type":"integer"},"phone_number":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number"},"today":{"$ref":"#\/components\/schemas\/activity-report-bucket-common"}}},"call-activity-item-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"example":"eyJ2IjoxLCJrZXkiOlsnMTAyJywnMTAzJ119","title":"CallActivityItemId"},"phone-number-limit-error-details-common":{"title":"PhoneNumberLimitErrorDetailsCommon","type":"object","required":["limit_units","remaining_units"],"properties":{"limit_units":{"type":"integer","format":"int32"},"remaining_units":{"type":"integer","format":"int32"}}},"collection-of-webhook-event-type":{"title":"CollectionOfWebhookEventType","type":"object","required":["items"],"properties":{"items":{"items":{"$ref":"#\/components\/schemas\/webhook-event-type"},"type":"array"}}},"actor":{"title":"Actor","discriminator":{"propertyName":"type","mapping":{"system":"#\/components\/schemas\/system-actor","user":"#\/components\/schemas\/user-actor"}},"type":"object","oneOf":[{"$ref":"#\/components\/schemas\/system-actor"},{"$ref":"#\/components\/schemas\/user-actor"}],"nullable":false},"user-actor":{"allOf":[{"$ref":"#\/components\/schemas\/user-reference"},{"required":["type"],"type":"object","properties":{"type":{"enum":["user"],"type":"string","description":"The resource was created or modified by net2phone team member."}}}],"type":"object","nullable":false,"title":"UserActor"},"mcp-server-display-name":{"title":"McpServerDisplayName","description":"The unique name of the MCP Server.","type":"string","maxLength":100,"example":"my-mcp-server-v1","nullable":false},"voicemail-missed-event":{"allOf":[{"required":["user","event"],"type":"object","properties":{"duration":{"type":"integer"},"reason":{"$ref":"#\/components\/schemas\/voicemail-missed-reason"},"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user who missed a voice mail."},"event":{"enum":["voicemail_missed"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"VoicemailMissedEvent"},"phone-numbers-account-limit-reached":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type","details"],"type":"object","properties":{"type":{"enum":["phone_numbers_account_limit_reached_error"],"type":"string","nullable":false},"details":{"$ref":"#\/components\/schemas\/phone-number-limit-error-details-common"}}}],"example":{"type":"phone_numbers_account_limit_reached_error","status_code":403,"message":"A maximum of '100' phone numbers can be added to your net2phone account.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00","details":{"limit_units":100,"remaining_units":0}},"title":"PhoneNumbersAccountLimitReached"},"call-answered-event":{"allOf":[{"required":["user","event"],"type":"object","properties":{"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user who answered the call."},"event":{"enum":["call_answered"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallAnsweredEvent"},"whatsapp-template-message-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"A highly structured [WhatsApp template message](https:\/\/developers.facebook.com\/docs\/whatsapp\/business-management-api\/message-templates\/#template-components).","type":"string","enum":["whatsapp_template"]}}},{"$ref":"#\/components\/schemas\/chat-message-id-reference"}],"example":{"type":"whatsapp_template","id":"42"},"title":"WhatsappTemplateMessageIdTypedReference"},"set-registration-unrestricted-messaging-enabled-phone-number-channel-request":{"title":"SetRegistrationUnrestrictedMessagingEnabledPhoneNumberChannelRequest","description":"Request to register an unrestricted phone number for SMS\/MMS messaging with a specified messaging direction.","type":"object","required":["type","phone_number","messaging_direction"],"properties":{"messaging_direction":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel-sms-mms-messaging-direction"},"phone_number":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-phone-number"},"type":{"enum":["set_registration_unrestricted"],"type":"string","description":"The type of request."}}},"call-activity-item-period-iana-timezone-id":{"allOf":[{"$ref":"#\/components\/schemas\/iana-timezone-id"}],"description":"The timezone, for which the `period` is calculated. Typically matches the user profile's timezone.","title":"CallActivityItemPeriodIanaTimezoneId"},"voicemail-received-event":{"allOf":[{"required":["duration","voicemail","user","event"],"type":"object","properties":{"voicemail":{"type":"boolean"},"duration":{"$ref":"#\/components\/schemas\/duration"},"user":{"description":"The entity which is relevant to this webhook event. If the voicemail is for a specific user, this will contain `WebhookTargetUser` schema. Otherwise `WebhookAccountSchema`.","oneOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"},{"$ref":"#\/components\/schemas\/webhook-target-account"}]},"event":{"enum":["voicemail_received"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"},{"$ref":"#\/components\/schemas\/call-webhook-event-audio-fields"}],"title":"VoicemailReceivedEvent"},"call-blind-transfer-event":{"allOf":[{"required":["user","event"],"type":"object","properties":{"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user who initiated the blind tranfer of the call."},"event":{"enum":["call_blind_transfer"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallBlindTransferEvent"},"ai-agent-conversation-identity":{"title":"AiAgentConversationIdentity","properties":{"conversation_id":{"description":"Unique identifier of the AI Agent conversation.","type":"string","example":"098765432109876543210987"},"transferred_to":{"description":"The destination to which the call was transferred, if applicable.","type":"string","example":"+15550001111","nullable":true},"virtual_agent":{"required":["id","name"],"type":"object","properties":{"name":{"description":"Display name of the virtual agent.","type":"string","example":"Support Bot"},"id":{"description":"Unique identifier of the virtual agent.","type":"string","example":"507f1f77bcf86cd799439011"}}},"to":{"description":"The destination phone number or identifier. Empty when not applicable.","type":"string","example":"+15559876543"},"messaging_channel":{"description":"The messaging channel used in the conversation. Only populated for `messaging` conversations.","type":"string","enum":["sms","whatsapp",null],"nullable":true,"example":"sms"},"ended_reason":{"description":"The reason the conversation ended.","type":"string","example":"normal"},"summary":{"description":"AI-generated summary of the conversation. `null` when no summary is available; `post_conversation_tasks.summary.status` tells why, and whether one is still coming.","type":"object","nullable":true,"properties":{"resolution":{"description":"How the conversation was resolved.","type":"string"},"reason_for_conversation":{"description":"The reason the customer initiated the conversation.","type":"string"},"customer_sentiment":{"description":"Detected customer sentiment.","type":"string","example":"neutral"},"key_points":{"description":"Key points discussed during the conversation.","type":"string"}}},"type":{"description":"The type of conversation.","type":"string","enum":["inbound_voice","chat","messaging"],"example":"inbound_voice"},"ended_at_time":{"description":"Date and time when the conversation ended.","type":"string","example":"2026-05-06T12:05:30Z","format":"date-time"},"created_at_time":{"description":"Date and time when the conversation was created.","type":"string","example":"2026-05-06T10:05:30Z","format":"date-time"},"from":{"description":"The originating phone number or identifier. Empty when not applicable.","type":"string","example":"+15551234567"}},"type":"object","required":["conversation_id","type","virtual_agent","summary","from","to","ended_reason","ended_at_time","transferred_to","messaging_channel","created_at_time"]},"call-detail-record-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique CDR (Call Detail Record) identifier.","example":"635a6537e5f7685d62a7fb7a","title":"CallDetailRecordId"},"webhook-target-account":{"title":"WebhookTargetAccount","description":"Describes an account related to a webhook event.","type":"object","additionalProperties":false,"required":["account_id"],"properties":{"account_id":{"$ref":"#\/components\/schemas\/integer-account-id"}}},"ignore-if-used-as-caller-id":{"title":"IgnoreIfUsedAsCallerId","description":"If true and this phone number is found as caller id for any team member, all the incoming calls to this number will be disconnected thereafter. If false and this phone number is found as caller id for any team member, the request will fail.","type":"boolean","default":false},"activity-item-id-reference":{"title":"ActivityItemIdReference","type":"object","required":["id"],"properties":{"id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"example":"user-456-1234-latest","description":"Unique identifier of the activity item entity."}}},"call-blocked-event":{"allOf":[{"required":["user","event"],"type":"object","properties":{"user":{"description":"The entity which is relevant to this webhook event. If the number is blocked at account level this will contain `WebhookTargetAccount` schema. Otherwise `WebhookEventUserSchema`.","oneOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"},{"$ref":"#\/components\/schemas\/webhook-target-account"}]},"event":{"enum":["call_blocked"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallBlockedEvent"},"webhook-subscription-virtual-agent-filter":{"title":"WebhookSubscriptionVirtualAgentFilter","description":"The Virtual Agents this subscription is scoped to. `null` or an empty list means the subscription receives events for all Virtual Agents.","type":"object","required":["virtual_agents"],"nullable":true,"properties":{"virtual_agents":{"description":"The Virtual Agents this subscription is scoped to.","type":"array","items":{"$ref":"#\/components\/schemas\/virtual-agent-id-reference"}}}},"set-registration-campaign-registry-messaging-enabled-phone-number-channel-request":{"title":"SetRegistrationCampaignRegistryMessagingEnabledPhoneNumberChannelRequest","description":"Request to register a Campaign Registry (10DLC) phone number for SMS\/MMS messaging.\nCampaign Registry registrations always use two-way messaging direction and require association with a campaign.\n\n**Note:** This request type is currently deprecated and will be supported in a future release.","type":"object","required":["type","phone_number","campaign_id"],"properties":{"phone_number":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-phone-number"},"type":{"enum":["set_registration_campaign_registry"],"type":"string","description":"The type of request."},"campaign_id":{"$ref":"#\/components\/schemas\/campaign-registry-campaign-id"}},"deprecated":true},"special-extension-reference-optional":{"title":"SpecialExtensionReferenceOptional","type":"object","required":["id","display_name","special_extension_type"],"properties":{"display_name":{"type":"string","minLength":1,"maxLength":100,"example":"Some Device","nullable":false},"special_extension_type":{"$ref":"#\/components\/schemas\/special-extension-type"},"id":{"$ref":"#\/components\/schemas\/special-extension-id"}},"nullable":true},"call-busy-event":{"allOf":[{"required":["user","event"],"type":"object","properties":{"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user whose call received a busy signal."},"event":{"enum":["call_busy"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallBusyEvent"},"post-conversation-tasks":{"title":"PostConversationTasks","description":"Lifecycle status of the asynchronous tasks that run after a conversation ends. `null` for conversations created before task tracking existed; for those, fall back to the task's artifact field itself (for example, a populated `summary` means generation completed, and `null` means nothing exists and nothing is coming).","type":"object","properties":{"summary":{"$ref":"#\/components\/schemas\/post-conversation-summary-task"}},"nullable":true},"call-result":{"title":"CallResult","description":"The final status of the call.","type":"string","x-n2p-enum":{"values":[{"description":"The call was answered and some conversation happened. For `outgoing` calls to external phone numbers this may also include calls with automated responses, e.g. voicemail was recorded on the callee side.\n","name":"Answered","value":"answered"},{"description":"The call wasn't answered.\n* The call rang for too long and was missed.\n* The call to a net2phone phone number was missed and a voicemail was left.\n* The callee was busy.\n* The call was rejected by a callee.\n* The call was rejected or failed by net2phone.\n* The call was cancelled early by a caller.\n","name":"Not Answered","value":"not_answered"},{"description":"The call was blocked by incoming or outgoing call blocking rules.","name":"Blocked","value":"blocked"},{"description":"The call was rejected because the maximum number of channels was reached.","name":"NoChannelsAvailable","value":"no_channels_available"}],"name":"CallResult","modelAsString":false},"enum":["answered","not_answered","blocked","no_channels_available"]},"duration":{"title":"Duration","description":"Call duration in `seconds`.","type":"integer"},"call-recording-view-status":{"title":"CallRecordingViewStatus","description":"Shows if a call recording was read \/ unread.","type":"string","x-n2p-enum":{"values":[{"description":"Marks the Call Recording status as unread.","name":"Unread","value":"unread"},{"description":"Marks the Call Recording status as read.","name":"Read","value":"read"}],"name":"CallRecordingViewStatus","modelAsString":false},"enum":["unread","read"]},"conversation":{"allOf":[{"$ref":"#\/components\/schemas\/conversation-id-reference"},{"type":"object","properties":{"created_by":{"$ref":"#\/components\/schemas\/audit-actor"},"post_conversation_tasks":{"$ref":"#\/components\/schemas\/post-conversation-tasks"},"ended_by":{"$ref":"#\/components\/schemas\/audit-actor"},"supplied_session":{"allOf":[{"$ref":"#\/components\/schemas\/conversation-supplied-session"}],"description":"The session values the API caller supplied when creating the conversation, as stored, exposed to the Virtual Agent's jq expressions under `.session`. Null when none were supplied, including on every voice and messaging conversation. Asserted by the caller and not verified by the platform.","nullable":true},"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"},"from":{"allOf":[{"$ref":"#\/components\/schemas\/conversation-from"}],"description":"The originating number as observed by the platform, provided by the carrier on a call. Null on chat conversations, including when `supplied_session.from_number` was supplied at creation - a caller-asserted number is never reported here.","nullable":true},"voice_details":{"$ref":"#\/components\/schemas\/conversation-voice-details"},"virtual_agent_id":{"$ref":"#\/components\/schemas\/virtual-agent-id"},"ended_reason":{"$ref":"#\/components\/schemas\/conversation-ended-reason"},"updated_by":{"$ref":"#\/components\/schemas\/audit-actor"},"usage":{"$ref":"#\/components\/schemas\/usage"},"messaging_details":{"allOf":[{"$ref":"#\/components\/schemas\/conversation-messaging-details"}],"nullable":true},"ended_at_time":{"$ref":"#\/components\/schemas\/conversation-ended-at-time"},"summary":{"$ref":"#\/components\/schemas\/conversation-summary"},"to":{"allOf":[{"$ref":"#\/components\/schemas\/phone-number-phone-number"}],"description":"The destination number as observed by the platform. Null on chat conversations, including when `supplied_session.to_number` was supplied at creation.","nullable":true},"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"transport":{"$ref":"#\/components\/schemas\/conversation-transport"}}}],"title":"Conversation"},"call-completed-event":{"allOf":[{"required":["duration","user","event"],"type":"object","properties":{"voice_mail":{"description":"Value `true` indicates this call has a voicemail recorded. And you should also have received `voicemail_received` event (if subscribed) for that when this is set to `true`.","type":"boolean"},"duration":{"$ref":"#\/components\/schemas\/duration"},"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user whose call is completed."},"event":{"enum":["call_completed"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallCompletedEvent"},"special-extension-reference":{"allOf":[{"$ref":"#\/components\/schemas\/special-extension-reference-optional"},{"type":"object","nullable":false}],"title":"SpecialExtensionReference"},"welcome-menu-id-typed-reference":{"allOf":[{"type":"object","required":["type"],"nullable":false,"properties":{"type":{"enum":["welcome_menu"],"type":"string"}}},{"$ref":"#\/components\/schemas\/welcome-menu-id-reference"}],"title":"WelcomeMenuIdTypedReference"},"set-call-recording-view-status-command":{"title":"SetCallRecordingViewStatusCommand","type":"object","required":["call_recording_id","status"],"properties":{"call_recording_id":{"$ref":"#\/components\/schemas\/call-recording-id"},"status":{"$ref":"#\/components\/schemas\/call-recording-view-status"}}},"special-extension-caller":{"allOf":[{"$ref":"#\/components\/schemas\/caller-common"},{"required":["type","special_extension"],"type":"object","properties":{"special_extension":{"$ref":"#\/components\/schemas\/special-extension-reference"},"type":{"enum":["special_extension"],"type":"string"}}}],"title":"SpecialExtensionCaller"},"gupshup-integration-template-display-name":{"title":"GupshupIntegrationTemplateDisplayName","description":"Name of the Gupshup template.","type":"string","minLength":1,"maxLength":512,"example":"common_update_1"},"tool-json-schema":{"title":"ToolJsonSchema","type":"object","required":["type","description"],"properties":{"items":{"$ref":"#\/components\/schemas\/tool-json-schema"},"type":{"enum":["string","number","integer","object","array","boolean"],"type":"string"},"description":{"maxLength":1024,"type":"string"},"properties":{"type":"object","additionalProperties":{"$ref":"#\/components\/schemas\/tool-json-schema"}},"nullable":{"type":"boolean","default":false}}},"click-to-call-initiator":{"title":"ClickToCallInitiator","description":"Describes a user starting the click-to-call flow.","type":"object","required":["id","account_id"],"properties":{"account_id":{"$ref":"#\/components\/schemas\/integer-account-id"},"id":{"$ref":"#\/components\/schemas\/integer-user-id"}}},"special-extension-id-reference":{"title":"SpecialExtensionIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/special-extension-id"}}},"caller":{"title":"Caller","discriminator":{"propertyName":"type","mapping":{"special_extension":"#\/components\/schemas\/special-extension-caller","external_phone_number":"#\/components\/schemas\/external-phone-number-caller","user":"#\/components\/schemas\/user-caller"}},"oneOf":[{"$ref":"#\/components\/schemas\/external-phone-number-caller"},{"$ref":"#\/components\/schemas\/user-caller"},{"$ref":"#\/components\/schemas\/special-extension-caller"}]},"special-extension-id-typed-reference":{"allOf":[{"type":"object","required":["type"],"nullable":false,"properties":{"type":{"enum":["special_extension"],"type":"string"}}},{"$ref":"#\/components\/schemas\/special-extension-id-reference"}],"title":"SpecialExtensionIdTypedReference"},"call-endpoint-optional":{"title":"CallEndpointOptional","description":"A E.164 phone number or an extension. Set to `null` if the phone number is hidden.","anyOf":[{"$ref":"#\/components\/schemas\/e164-phone-number-no-plus"},{"$ref":"#\/components\/schemas\/phone-extension"}],"nullable":true},"user-reference-deprecated":{"allOf":[{"$ref":"#\/components\/schemas\/user-reference-optional-deprecated"},{"type":"object","nullable":false}],"title":"UserReferenceDeprecated"},"messaging-enabled-phone-number-assignment-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"title":"MessagingEnabledPhoneNumberAssignmentId"},"call-recording":{"allOf":[{"$ref":"#\/components\/schemas\/call-recording-reference-deprecated"},{"description":"A detailed view of a `CallRecording` resource.","type":"object","required":["owner"],"nullable":false,"properties":{"owner":{"$ref":"#\/components\/schemas\/user-reference-deprecated"},"updated_by":{"$ref":"#\/components\/schemas\/user-reference-optional-deprecated"}}}],"title":"CallRecording"},"messaging-enabled-phone-number-assignment-assignee-company-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the company within account.","example":"10293993","title":"MessagingEnabledPhoneNumberAssignmentAssigneeCompanyId"},"e164-phone-number-with-plus-nullable":{"pattern":"^\\+[1-9]\\d{5,14}$","description":"Phone number in E.164 international format which includes \"+\" character.","type":"string","example":"+15307636905","nullable":true,"title":"E164PhoneNumberWithPlusNullable"},"welcome-menu-reference-optional":{"title":"WelcomeMenuReferenceOptional","type":"object","required":["id","display_name"],"properties":{"display_name":{"type":"string","minLength":1,"maxLength":100,"example":"Customer Support","nullable":false},"id":{"$ref":"#\/components\/schemas\/welcome-menu-id"}},"nullable":true},"e164-phone-number-normalized-call-endpoint":{"title":"E164PhoneNumberNormalizedCallEndpoint","type":"object","required":["type","id"],"properties":{"type":{"enum":["e164_phone_number"],"type":"string"},"id":{"$ref":"#\/components\/schemas\/e164-phone-number-with-plus-nullable"}}},"sentiment-label":{"title":"SentimentLabel","description":"The inferred sentiment label with the highest level of confidence.","type":"string","enum":["very_positive","positive","neutral","negative","very_negative",null],"nullable":true},"collection-of-call-recordings":{"title":"CollectionOfCallRecordings","type":"object","required":["items"],"properties":{"items":{"items":{"$ref":"#\/components\/schemas\/call-recording"},"type":"array"}}},"department-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the department within account.","example":"10293993","title":"DepartmentId"},"background-audio-mode":{"title":"BackgroundAudioMode","description":"The playback mode for the background audio of a Voice Conversation Template.","type":"string","enum":["none","agent_thinking","always"]},"delete-call-recording-command":{"title":"DeleteCallRecordingCommand","type":"object","required":["call_recording_id"],"properties":{"call_recording_id":{"$ref":"#\/components\/schemas\/call-recording-id"}}},"messaging-enabled-phone-number-assignment-assignee":{"title":"MessagingEnabledPhoneNumberAssignmentAssignee","description":"The resource to which the this Phone Number is assigned to. Set to `null` if the `assignment_status` is `unassigned`.","type":"object","anyOf":[{"$ref":"#\/components\/schemas\/user-typed-reference"},{"$ref":"#\/components\/schemas\/department-typed-reference"},{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-assignment-assignee-company-id-typed-reference"}],"nullable":true,"discriminator":{"propertyName":"type","mapping":{"department":"#\/components\/schemas\/department-typed-reference","user":"#\/components\/schemas\/user-typed-reference","company":"#\/components\/schemas\/messaging-enabled-phone-number-assignment-assignee-company-id-typed-reference"}}},"batch-delete-call-recordings-command":{"title":"BatchDeleteCallRecordingsCommand","type":"object","required":["requests"],"properties":{"requests":{"items":{"$ref":"#\/components\/schemas\/delete-call-recording-command"},"type":"array","minItems":1,"maxItems":100,"uniqueItems":true}}},"ring-group-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the ring group within account.","example":"10293993","title":"RingGroupId"},"caller-common":{"title":"CallerCommon","type":"object","properties":{"caller_display_name":{"description":"The optional display name as set in the call information.","type":"string","example":"John Doe","nullable":true}}},"unified-conversation-id-typed-reference":{"title":"UnifiedConversationIdTypedReference","discriminator":{"propertyName":"type","mapping":{"direct_group_conversation":"#\/components\/schemas\/direct-group-conversation-id-typed-reference","phone_number_bound_conversation":"#\/components\/schemas\/phone-number-bound-conversation-id-typed-reference","direct_user_conversation":"#\/components\/schemas\/direct-user-conversation-id-typed-reference","channel_conversation":"#\/components\/schemas\/channel-conversation-id-typed-reference"}},"oneOf":[{"$ref":"#\/components\/schemas\/channel-conversation-id-typed-reference"},{"$ref":"#\/components\/schemas\/direct-user-conversation-id-typed-reference"},{"$ref":"#\/components\/schemas\/direct-group-conversation-id-typed-reference"},{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-id-typed-reference"}]},"ring-group-reference-optional":{"title":"RingGroupReferenceOptional","type":"object","required":["id","display_name"],"properties":{"display_name":{"type":"string","minLength":1,"maxLength":100,"example":"Support Level 1","nullable":false},"id":{"$ref":"#\/components\/schemas\/ring-group-id"}},"nullable":true},"submit-tool-result-command":{"title":"SubmitToolResultCommand","type":"object","required":["message_id","content"],"properties":{"message_id":{"description":"The ID of the conversation message containing the pending client tool call request.","type":"string"},"content":{"maxLength":10000,"description":"The result content from executing the client tool call. Should be JSON when the tool's `response.transform` or `response.context` expressions reference `.resp`; non-JSON content is passed through unchanged with `transform` skipped.","type":"string"}}},"filter":{"title":"Filter","discriminator":{"propertyName":"type","mapping":{"not":"#\/components\/schemas\/not-composite","or":"#\/components\/schemas\/or-composite","and":"#\/components\/schemas\/and-composite","string_starts_with":"#\/components\/schemas\/string-starts-with-restriction","string_contains":"#\/components\/schemas\/string-contains-restriction","eq":"#\/components\/schemas\/equals-restriction","gte":"#\/components\/schemas\/greater-than-equals-restriction","neq":"#\/components\/schemas\/not-equals-restriction","in":"#\/components\/schemas\/in-restriction","lte":"#\/components\/schemas\/less-than-equals-restriction"}},"type":"object","oneOf":[{"$ref":"#\/components\/schemas\/and-composite"},{"$ref":"#\/components\/schemas\/or-composite"},{"$ref":"#\/components\/schemas\/not-composite"},{"$ref":"#\/components\/schemas\/equals-restriction"},{"$ref":"#\/components\/schemas\/not-equals-restriction"},{"$ref":"#\/components\/schemas\/in-restriction"},{"$ref":"#\/components\/schemas\/string-starts-with-restriction"},{"$ref":"#\/components\/schemas\/greater-than-equals-restriction"},{"$ref":"#\/components\/schemas\/less-than-equals-restriction"},{"$ref":"#\/components\/schemas\/string-contains-restriction"}],"nullable":true},"external-phone-number-caller":{"allOf":[{"$ref":"#\/components\/schemas\/caller-common"},{"required":["type"],"type":"object","properties":{"type":{"enum":["external_phone_number"],"type":"string","description":"External customer with a phone number outside of the net2phone account."}}}],"title":"ExternalPhoneNumberCaller"},"call-queue-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique call queue id within a net2phone account.","example":"10293993","title":"CallQueueId"},"call-consultative-transfer-event":{"allOf":[{"required":["reason","user","event"],"type":"object","properties":{"reason":{"$ref":"#\/components\/schemas\/call-consultative-transfer-reason"},"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user who initiated the consultative transfer (also referred as warm transfer)."},"event":{"enum":["call_consultative_transfer"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallConsultativeTransferEvent"},"gupshup-integration-template-header":{"title":"GupshupIntegrationTemplateHeader","description":"Header text, populated only when `header_format` is `text`. Omitted for `image` (the image is carried in `header_parameters`) and for `none`.","type":"string","minLength":1,"example":"Hi {{1}}."},"client-tool-call-already-submitted-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["client_tool_call_already_submitted"],"type":"string","nullable":false}}}],"example":{"type":"client_tool_call_already_submitted","status_code":409,"message":"The tool result for this client tool call has already been submitted.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"ClientToolCallAlreadySubmittedError"},"user-caller":{"allOf":[{"$ref":"#\/components\/schemas\/caller-common"},{"required":["type","user"],"type":"object","properties":{"type":{"enum":["user"],"type":"string","description":"A net2phone user (team member)."},"user":{"$ref":"#\/components\/schemas\/user-reference"}}}],"title":"UserCaller"},"call-forward-event":{"allOf":[{"required":["forward_number","user","event"],"type":"object","properties":{"forward_number":{"description":"The number to which the call has been forwarded to.","oneOf":[{"$ref":"#\/components\/schemas\/phone-extension"},{"$ref":"#\/components\/schemas\/e164-phone-number"}]},"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user whose call has been transferred."},"event":{"enum":["call_forward"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallForwardEvent"},"call-route":{"title":"CallRoute","description":"Describes call routing entities (welcome menus, departments, ring groups) which participated in handling this call. More than one property may be set if the call was routed through several entities.","type":"object","properties":{"welcome_menu":{"$ref":"#\/components\/schemas\/welcome-menu-reference-optional"},"call_queue":{"$ref":"#\/components\/schemas\/call-queue-reference-optional"},"department":{"$ref":"#\/components\/schemas\/department-reference-optional"},"ring_group":{"$ref":"#\/components\/schemas\/ring-group-reference-optional"}}},"special-extension-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the Special Extension within account.","example":"10293993","title":"SpecialExtensionId"},"submit-tool-result-error":{"title":"SubmitToolResultError","discriminator":{"propertyName":"type","mapping":{"client_tool_call_already_submitted":"#\/components\/schemas\/client-tool-call-already-submitted-error","conversation_ended":"#\/components\/schemas\/conversation-ended-error"}},"type":"object","required":["type"],"oneOf":[{"$ref":"#\/components\/schemas\/client-tool-call-already-submitted-error"},{"$ref":"#\/components\/schemas\/conversation-ended-error"}],"properties":{"type":{"type":"string"}}},"sms-message-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"A plaintext SMS message.","type":"string","enum":["sms"]}}},{"$ref":"#\/components\/schemas\/chat-message-id-reference"}],"example":{"type":"sms","id":"42"},"title":"SmsMessageIdTypedReference"},"timestamp-audit-fields-immutable":{"title":"TimestampAuditFieldsImmutable","type":"object","required":["created_at_time"],"properties":{"created_at_time":{"allOf":[{"type":"string","nullable":false},{"$ref":"#\/components\/schemas\/created-at-time"}]}},"nullable":true},"conversation-transport-not-supported-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["conversation_transport_not_supported"],"type":"string","nullable":false}}}],"example":{"type":"conversation_transport_not_supported","status_code":409,"message":"conversation transport \"messaging\" is not supported for this operation (expected \"chat\")","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"ConversationTransportNotSupportedError"},"pbx-directory-configuration":{"title":"PbxDirectoryConfiguration","type":"object","required":["directory_access_enabled"],"properties":{"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"},"created_by":{"$ref":"#\/components\/schemas\/audit-actor"},"directory_access_enabled":{"description":"If the value is `true` then the Agent can access your PBX directory and transfer the caller to users found in your PBX directory.","type":"boolean"},"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"updated_by":{"$ref":"#\/components\/schemas\/audit-actor"}}},"webhook-subscription-owner-type":{"title":"WebhookSubscriptionOwnerType","description":"Webhook subscriptions owned by `Account` can be viewed\/edited by all admins in this account. Webhook subscriptions owned by `User` are scoped to this user and can be viewed\/edited by the same user and admin users.","type":"string","enum":["user","account"]},"collection-of-call-queue-agent-reports":{"title":"CollectionOfCallQueueAgentReports","type":"object","required":["items","interval_size"],"properties":{"interval_size":{"$ref":"#\/components\/schemas\/call-queue-report-interval-size"},"items":{"items":{"$ref":"#\/components\/schemas\/call-queue-agent-report"},"type":"array"}}},"chat-message-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"Chat message type.","type":"string","enum":["chat_message"]}}},{"$ref":"#\/components\/schemas\/chat-message-id-reference"}],"example":{"type":"chat_message","id":"42"},"title":"ChatMessageIdTypedReference"},"throttling-error":{"title":"ThrottlingError","example":{"type":"throttling_error","status_code":429,"message":"The request quota for your account was exhausted. Please wait at least 10 seconds before making a new request.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00","details":{"limit_quota_units":100,"reset_seconds":30,"remaining_quota_units":99,"operation_quota_units":1,"limit_time_window_seconds":60}},"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["details"],"type":"object","properties":{"details":{"title":"RateLimitErrorDetail","type":"object","required":["limit_time_window_seconds","limit_quota_units","remaining_quota_units","reset_seconds","operation_quota_units"],"properties":{"limit_quota_units":{"description":"The number of request units to spend for your net2phone account in each time window.","type":"integer","minimum":1},"reset_seconds":{"description":"Indicates the number of seconds until the request quota resets.","type":"integer","minimum":1},"remaining_quota_units":{"description":"The number of request units left for your net2phone account in the current time window.","type":"integer","minimum":0},"operation_quota_units":{"description":"The price of the attempted operation in quota units.","type":"integer","minimum":1},"limit_time_window_seconds":{"description":"The width of the throttling time window in seconds.","type":"integer","minimum":1}}}}}]},"call-rg-queue-entered-event":{"allOf":[{"required":["user","event"],"type":"object","properties":{"user":{"$ref":"#\/components\/schemas\/webhook-target-account"},"event":{"enum":["call_rg_queue_entered"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallRgQueueEnteredEvent"},"mms-message-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"A plaintext MMS message with optional multimedia files.","type":"string","enum":["mms"]}}},{"$ref":"#\/components\/schemas\/chat-message-id-reference"}],"example":{"type":"mms","id":"42"},"title":"MmsMessageIdTypedReference"},"call-hold-event":{"allOf":[{"required":["reason","user","event"],"type":"object","properties":{"reason":{"$ref":"#\/components\/schemas\/call-hold-reason"},"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user who performs the call hold operation."},"event":{"enum":["call_hold"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallHoldEvent"},"create-webhook-subscription-command":{"title":"CreateWebhookSubscriptionCommand","description":"The `platform` field determines which scope filter is applicable: `pbx` subscriptions support the `users` scope filter; `ai_agent` subscriptions support the `virtual_agents` scope filter.","required":["platform"],"discriminator":{"propertyName":"platform","mapping":{"pbx":"#\/components\/schemas\/create-webhook-subscription-pbx-command","ai_agent":"#\/components\/schemas\/create-webhook-subscription-ai-agent-command"}},"oneOf":[{"$ref":"#\/components\/schemas\/create-webhook-subscription-pbx-command"},{"$ref":"#\/components\/schemas\/create-webhook-subscription-ai-agent-command"}],"properties":{"platform":{"$ref":"#\/components\/schemas\/webhook-platform"}}},"call-ringing-event":{"allOf":[{"required":["user","event"],"type":"object","properties":{"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user whose call is ringing."},"event":{"enum":["call_ringing"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallRingingEvent"},"system-actor":{"title":"SystemActor","type":"object","required":["type"],"properties":{"type":{"enum":["system"],"type":"string","description":"The resource was created or modified by the automated process or net2phone support team member."}},"nullable":false},"call-missed-reason":{"title":"CallMissedReason","type":"string","x-n2p-enum":{"values":[{"name":"User Did Not Answer","description":"The user did not answer the call.","value":"user_did_not_answer"},{"name":"User Rejected Call","description":"The user explicitly rejected the call.","value":"user_rejected_call"},{"name":"Call Pickup","description":"Another user picked the call.","value":"call_pickup"},{"name":"Call Forward Only","description":"Call has been forwarded to another number.","value":"call_forward_only"},{"name":"User Not Logged In","description":"User is not logged into the app.","value":"user_not_logged_in"},{"name":"User Not Registered","description":"User's extension is not registered in the call server.","value":"user_not_registered"},{"name":"Call Failed","description":"The call has been failed with an unexpected cause.","value":"call_failed"}],"name":"CallMissedReason","modelAsString":false},"enum":["user_did_not_answer","user_rejected_call","call_pickup","call_forward_only","user_not_logged_in","user_not_registered","call_failed"]},"call-unpark-event":{"allOf":[{"required":["slot","user","event"],"type":"object","properties":{"event":{"enum":["call_unpark"],"type":"string"},"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user who unparked a call from a parking slot."},"slot":{"allOf":[{"$ref":"#\/components\/schemas\/slot"}],"description":"The slot number (received from `call_park` event) from which the call has been unparked."}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallUnparkEvent"},"knowledge-base-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the Knowledge Base.","example":"12345","title":"KnowledgeBaseId"},"user-id-reference":{"title":"UserIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/string-id"}}},"user-callee-optional":{"title":"UserCalleeOptional","type":"object","required":["type","user"],"properties":{"type":{"enum":["user"],"type":"string"},"user":{"$ref":"#\/components\/schemas\/user-reference"}},"nullable":true},"emergency-call-event":{"allOf":[{"required":["user","event"],"type":"object","properties":{"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user who is availing emergency service."},"event":{"enum":["emergency_call"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"EmergencyCallEvent"},"conversation-ended-reason":{"title":"ConversationEndedReason","description":"The reason the conversation ended.","type":"string","enum":["normal","error","inactivity_timeout","phone_number_unassigned","bot_detects_completion","transfer","max_call_length_exceeded",null],"nullable":true},"external-phone-number-callee-optional":{"title":"ExternalPhoneNumberCalleeOptional","type":"object","required":["type"],"properties":{"type":{"enum":["external_phone_number"],"type":"string","description":"External customer with a phone number outside of the net2phone account."}},"nullable":true},"messaging-enabled-phone-number-phone-number":{"allOf":[{"$ref":"#\/components\/schemas\/e164-phone-number-with-plus"}],"description":"Messaging enabled phone number in E.164 international format which includes \"+\" character.","example":"+918748133759","title":"MessagingEnabledPhoneNumberPhoneNumber"},"collection-of-call-queue-reports":{"title":"CollectionOfCallQueueReports","type":"object","required":["items","interval_size"],"properties":{"interval_size":{"$ref":"#\/components\/schemas\/call-queue-report-interval-size"},"items":{"items":{"$ref":"#\/components\/schemas\/call-queue-report"},"type":"array"}}},"phone-number-bound-conversation-dialog-transfer-details":{"title":"PhoneNumberBoundConversationDialogTransferDetails","description":"Factual details of the most recent transfer for this dialog. Present when a transfer exists: while it is pending\n(status \"transferring\") and retained on the resulting \"assigned\" dialog after acceptance; absent otherwise.\nThese are a property of the dialog state and are present on both live and historical (system message) representations.\nThe current user's available actions on the transfer are exposed separately via `transfer_flags` on the latest dialog.","type":"object","required":["transferred_by","transferred_to","transferred_at_time","expires_at_time"],"properties":{"internal_note":{"description":"Internal note left by the user who initiated the transfer, not visible to the end customer.","type":"string"},"expires_at_time":{"description":"The timestamp when the transfer will be automatically cancelled if no action is taken. Null when the transfer has no automatic expiry (e.g. an automatic transfer).","type":"string","nullable":true,"format":"date-time"},"transferred_to":{"description":"The user or department to whom the dialog was transferred.","oneOf":[{"$ref":"#\/components\/schemas\/user-typed-reference"},{"$ref":"#\/components\/schemas\/department-typed-reference"}],"discriminator":{"propertyName":"type","mapping":{"department":"#\/components\/schemas\/department-typed-reference","user":"#\/components\/schemas\/user-typed-reference"}}},"transferred_by":{"allOf":[{"$ref":"#\/components\/schemas\/actor"}],"description":"The actor that initiated the transfer — a user, or the system for automatic transfers."},"transferred_at_time":{"description":"The time at which the transfer was initiated.","type":"string","format":"date-time"}}},"tool-assignment":{"title":"ToolAssignment","type":"object","required":["id","assigned_at_time"],"properties":{"assigned_at_time":{"description":"The timestamp when Tool was assigned to a Virtual Agent.","type":"string","nullable":true,"format":"date-time"},"id":{"$ref":"#\/components\/schemas\/tool-id"}}},"cursor-page-of-webhook-subscription":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-page"},{"required":["items"],"type":"object","properties":{"items":{"items":{"$ref":"#\/components\/schemas\/webhook-subscription"},"type":"array"}}}],"title":"CursorPageOfWebhookSubscription"},"dialog-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"},{"description":"Unique identifier of the dialog.","example":"1234"}],"title":"DialogId"},"voicemail-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique voicemail identifier.","title":"VoicemailId"},"create-webhook-subscription-pbx-command":{"allOf":[{"$ref":"#\/components\/schemas\/create-webhook-subscription-command-base"},{"required":["platform"],"type":"object","properties":{"scope_filter":{"$ref":"#\/components\/schemas\/webhook-subscription-user-filter-options"},"platform":{"enum":["pbx"],"type":"string"}}}],"title":"CreateWebhookSubscriptionPbxCommand"},"sip-trunk-callee":{"title":"SipTrunkCallee","type":"object","required":["type","ip_address"],"properties":{"ip_address":{"allOf":[{"$ref":"#\/components\/schemas\/sip-trunk-call-ip-address"}],"description":"Shows the client target IP address that accepted the call (The destination IP address that the INVITE was sent to)."},"type":{"enum":["sip_trunk"],"type":"string"}}},"phone-number-activity-bucket":{"allOf":[{"$ref":"#\/components\/schemas\/activity-report-bucket-common"},{"type":"object","properties":{"phone_number":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number"}}}],"title":"PhoneNumberActivityBucket"},"huddle-room-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"},{"description":"Unique identifier of the Huddle room.","example":"l3f-m35-gxa"}],"title":"HuddleRoomId"},"gupshup-integration-template-status":{"title":"GupshupIntegrationTemplateStatus","type":"string","x-n2p-enum":{"values":[{"name":"Approved","description":"The template has passed template review and been approved, and can now be sent in template messages.\n","value":"approved"},{"name":"Pending","description":"The template passed category validation and is undergoing template review.\n","value":"pending"},{"name":"Rejected","description":"The template failed category validation or template review.\n","value":"rejected"},{"name":"Failed","description":"The template was rejected by Gupshup.\n","value":"failed"},{"name":"Deactivated","description":"The template violates policies or has received excessive negative feedback and is permanently disabled from being sent.\n","value":"deactivated"},{"name":"Paused","description":"The template has recurring negative feedback from users and cannot be sent until the issues are resolved.\n","value":"paused"}],"name":"GupshupIntegrationTemplateStatus","modelAsString":false},"enum":["approved","pending","rejected","failed","deactivated","paused"]},"voicemail-status":{"title":"VoicemailStatus","description":"Shows if the voicemail was read \/ unread or deleted.","type":"string","x-n2p-enum":{"values":[{"description":"The voicemail is not yet opened.","name":"Unread","value":"unread"},{"description":"The voicemail was read by the user.","name":"Read","value":"read"},{"description":"The voicemail was deleted explicitly by the user.","name":"Deleted","value":"deleted"}],"name":"VoicemailStatus","modelAsString":false},"enum":["unread","read","deleted"]},"virtual-agent-reference":{"allOf":[{"$ref":"#\/components\/schemas\/virtual-agent-id-reference"},{"required":["display_name"],"type":"object","properties":{"display_name":{"$ref":"#\/components\/schemas\/virtual-agent-display-name"},"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"},"created_by":{"$ref":"#\/components\/schemas\/audit-actor"},"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"updated_by":{"$ref":"#\/components\/schemas\/audit-actor"}}}],"title":"VirtualAgentReference"},"huddle-room-id-reference":{"title":"HuddleRoomIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/huddle-room-id"}}},"webhook-platform":{"title":"WebhookPlatform","type":"string","x-n2p-enum":{"values":[{"name":"PBX","description":"The net2phone PBX platform.","value":"pbx"},{"name":"AI Agent","description":"The net2phone AI Agent platform.","value":"ai_agent"}],"name":"WebhookPlatform","modelAsString":false},"enum":["pbx","ai_agent"]},"huddle-room-common":{"title":"HuddleRoomCommon","type":"object","properties":{"display_name":{"description":"Display name is required for non-expiring rooms. Also, a single user can not create more than one non-expiring room with the same `display_name`. For expiring rooms, this field is optional and more than one expiring room with the same name can be created.","type":"string","example":"Team's Daily Standup","nullable":true},"expires_at_time":{"description":"The optional timestamp when the room becomes unavailable. The users won't be able to join after this time. If set to `null` or omitted, the room will never expire and require unique (per user) `display_name`. Also, users can not create a conference less than for 15 minutes.","type":"string","nullable":true,"format":"date-time"},"is_dial_in_enabled":{"description":"Specifies if it's possible to connect to this room with a Huddle Dial-In phone number.","type":"boolean","default":false}}},"integer-user-id":{"title":"IntegerUserId","description":"Unique identifier of the user within an account.","type":"integer","example":1,"format":"int32"},"call-recording-analytics-status":{"title":"CallRecordingAnalyticsStatus","description":"The status of the call recording analytics on a call recording.","type":"string","x-n2p-enum":{"values":[{"description":"Indicates the analysis on the call recording successful.","name":"Completed","value":"completed"},{"description":"Indicates the analysis on the call recording failed..","name":"Failed","value":"failed"}],"name":"CallRecordingAnalyticsStatus","modelAsString":false},"enum":["completed","failed"]},"call-missed-event":{"allOf":[{"required":["duration","reason","user","event"],"type":"object","properties":{"duration":{"description":"Always `0` for missed calls.","type":"integer"},"reason":{"$ref":"#\/components\/schemas\/call-missed-reason"},"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user who missed the call."},"event":{"enum":["call_missed"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallMissedEvent"},"webhook-subscription-virtual-agent-filter-options":{"title":"WebhookSubscriptionVirtualAgentFilterOptions","description":"The Virtual Agents to subscribe for. Only `ai_agent` events related to these Virtual Agents will be reported to the `endpoint_url`. If omitted or set to `null`, events for all Virtual Agents are delivered.","type":"object","required":["virtual_agents"],"nullable":true,"properties":{"virtual_agents":{"items":{"$ref":"#\/components\/schemas\/virtual-agent-id-reference"},"type":"array","minItems":1,"description":"One or more Virtual Agents to scope this subscription to."}}},"batch-create-phone-numbers-forbidden-error":{"title":"BatchCreatePhoneNumbersForbiddenError","discriminator":{"propertyName":"type","mapping":{"phone_numbers_account_limit_reached_error":"#\/components\/schemas\/phone-numbers-account-limit-reached","forbidden_error":"#\/components\/schemas\/forbidden-error"}},"oneOf":[{"$ref":"#\/components\/schemas\/phone-numbers-account-limit-reached"},{"$ref":"#\/components\/schemas\/forbidden-error"}]},"call-recording-status":{"title":"CallRecordingStatus","description":"Shows if the call recording was read \/ unread or deleted.","type":"string","x-n2p-enum":{"values":[{"description":"The call recording is not yet opened.","name":"Unread","value":"unread"},{"description":"The call recording was read by the user.","name":"Read","value":"read"},{"description":"The call recording was recorded but need to be processed by call server.","name":"Processing","value":"processing"},{"description":"The call recording was deleted explicitly by the user or expired due to the recordings policy.","name":"Deleted","value":"deleted"}],"name":"CallRecordingStatus","modelAsString":false},"enum":["unread","read","processing","deleted"]},"voice-conversation-template":{"allOf":[{"$ref":"#\/components\/schemas\/voice-conversation-template-reference"},{"type":"object","properties":{"end_of_speech_silence":{"$ref":"#\/components\/schemas\/voice-conversation-template-end-of-speech-silence"},"description":{"$ref":"#\/components\/schemas\/voice-conversation-template-description"},"background_audio":{"$ref":"#\/components\/schemas\/voice-conversation-template-background-audio"},"transfer_scenarios":{"$ref":"#\/components\/schemas\/voice-transfer-scenarios"},"languages":{"description":"The languages that the Virtual Agent will support for the voice conversation.","type":"array","items":{"$ref":"#\/components\/schemas\/voice-conversation-template-language"}},"inactivity_detection":{"$ref":"#\/components\/schemas\/voice-conversation-template-inactivity-detection"},"initial_greeting":{"allOf":[{"$ref":"#\/components\/schemas\/templated-string"}],"description":"The initial greeting that the Virtual Agent will respond with."},"interrupt_tts":{"description":"Controls whether the bot Text-To-Speech (TTS) will be interrupted when the user speaks.","type":"boolean"}}}],"title":"VoiceConversationTemplate"},"slot":{"title":"Slot","description":"The slot number of the parked call.","type":"string","example":"2"},"virtual-agent-id-reference":{"title":"VirtualAgentIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/virtual-agent-id"}}},"page":{"title":"Page","type":"object","required":["total_items","page_index","page_size"],"properties":{"page_index":{"type":"integer","format":"int32"},"total_items":{"type":"integer","format":"int32"},"page_size":{"type":"integer","format":"int32"}}},"collection-of-webhook-platform":{"title":"CollectionOfWebhookPlatform","type":"object","required":["items"],"properties":{"items":{"items":{"$ref":"#\/components\/schemas\/webhook-platform"},"type":"array"}}},"data-source-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the Data Source.","example":"12345","title":"DataSourceId"},"webhook-event-type":{"title":"WebhookEventType","type":"object","required":["id","display_name"],"example":{"platform":"pbx","displayName":"Call Ringing","id":"call_ringing"},"properties":{"display_name":{"type":"string"},"platform":{"$ref":"#\/components\/schemas\/webhook-platform"},"id":{"$ref":"#\/components\/schemas\/webhook-event-type-id"}}},"call-queue-agent-status":{"title":"CallQueueAgentStatus","description":"Agent status in call queue.","type":"string","enum":["incall","ringing","offline","available","signout"]},"user-typed-reference-optional":{"allOf":[{"type":"object","required":["type"],"nullable":true,"properties":{"type":{"enum":["user"],"type":"string"}}},{"$ref":"#\/components\/schemas\/user-reference-optional"}],"title":"UserTypedReferenceOptional"},"call-pickup-user":{"title":"CallPickupUser","description":"Describes the user details of whose call has been picked up.","type":"object","required":["id","name","extension"],"example":{"name":"Lazy user","extension":"203","id":986308},"properties":{"name":{"type":"string"},"extension":{"$ref":"#\/components\/schemas\/phone-extension"},"id":{"type":"integer"}}},"call-recording-analytics-job-status":{"title":"CallRecordingAnalyticsJobStatus","description":"Status of the call detail records analytics job.","type":"string","x-n2p-enum":{"values":[{"description":"The analytics job is being processed.","name":"InProgress","value":"in_progress"},{"description":"The analytics job is processed. It is possible to request results.","name":"Completed","value":"completed"},{"description":"The analytics job is failed. It is possible to retry it.","name":"Failed","value":"failed"}],"name":"CallRecordingAnalyticsJobStatus","modelAsString":false},"enum":["in_progress","completed","failed",null],"nullable":true},"webhook-subscription-id-reference":{"title":"WebhookSubscriptionIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/string-id"}}},"role-id":{"title":"RoleId","type":"string","x-n2p-enum":{"values":[{"name":"Admin","description":"Tells the user is an admin.","value":"admin"},{"name":"Regular","description":"Tells the user is a regular user.","value":"regular"},{"name":"Unknown","description":"Used as the placeholder value when the user is deleted and the role is not retained.","value":"unknown"}],"name":"Role","modelAsString":false},"example":"admin","enum":["admin","regular","unknown"]},"webhook-event-type-id-reference":{"title":"WebhookEventTypeIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/webhook-event-type-id"}}},"string-contains-restriction":{"title":"StringContainsRestriction","description":"Verifies whether the string field contains a specific substring.","type":"object","required":["type","left","right"],"properties":{"left":{"$ref":"#\/components\/schemas\/field-value"},"type":{"enum":["string_contains"],"type":"string"},"right":{"$ref":"#\/components\/schemas\/string-literal-value"}}},"webhook-subscription-event-type-filter-options":{"title":"WebhookSubscriptionEventTypeFilterOptions","description":"The event types to subscribe for. If `include_all_current_and_future_event_types` is set to true, then `event_types` field value is ignored. Subscription is added for all event types, including those that are added in the future. If `include_all_current_and_future_event_types` is set to false, then a subscription is added only for provided `event_types`.  If `include_all_current_and_future_event_types` is set to false and `event_types` is empty, then a subscription is added for all currently available event types.","type":"object","required":["event_types"],"nullable":true,"properties":{"include_all_current_and_future_event_types":{"type":"boolean","default":false},"event_types":{"items":{"$ref":"#\/components\/schemas\/webhook-event-type-id-reference"},"type":"array"}}},"extension-phone-number-normalized-call-endpoint":{"title":"ExtensionPhoneNumberNormalizedCallEndpoint","type":"object","required":["type","id"],"properties":{"type":{"enum":["extension"],"type":"string"},"id":{"$ref":"#\/components\/schemas\/phone-extension"}}},"conversation-pending-client-tool-call-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["conversation_pending_client_tool_call"],"type":"string","nullable":false}}}],"example":{"type":"conversation_pending_client_tool_call","status_code":409,"message":"Cannot create a new message while a client tool call is pending. Submit the tool result first.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"ConversationPendingClientToolCallError"},"click-to-call-result-event":{"allOf":[{"required":["event","reason","outcome"],"type":"object","properties":{"outcome":{"$ref":"#\/components\/schemas\/click-to-call-result-outcome"},"reason":{"type":"string"},"user":{"allOf":[{"$ref":"#\/components\/schemas\/click-to-call-initiator"}],"description":"The user who initiated the click-to-call."},"event":{"enum":["c2c_call_result"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"ClickToCallResultEvent"},"conversation-summary-language":{"title":"ConversationSummaryLanguage","description":"The BCP 47 language code for conversation summarization. If null, the language of the conversation will be used.","type":"string","example":"en-US","nullable":true},"normalized-call-endpoint":{"title":"NormalizedCallEndpoint","discriminator":{"propertyName":"type","mapping":{"extension":"#\/components\/schemas\/extension-phone-number-normalized-call-endpoint","e164_phone_number":"#\/components\/schemas\/e164-phone-number-normalized-call-endpoint"}},"type":"object","oneOf":[{"$ref":"#\/components\/schemas\/extension-phone-number-normalized-call-endpoint"},{"$ref":"#\/components\/schemas\/e164-phone-number-normalized-call-endpoint"}],"description":"A E.164 phone number or an extension."},"call-queue-supervisor-statistics":{"title":"CallQueueSupervisorStatistics","type":"object","required":["agents","waiting_calls"],"properties":{"waiting_calls":{"items":{"$ref":"#\/components\/schemas\/call-queue-waiting-call"},"type":"array"},"agents":{"items":{"$ref":"#\/components\/schemas\/call-queue-statistics-agent"},"type":"array"}}},"phone-number-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the phone number.","example":"12345","title":"PhoneNumberId"},"create-webhook-subscription-command-base":{"title":"CreateWebhookSubscriptionCommandBase","type":"object","required":["display_name","endpoint_url"],"properties":{"display_name":{"description":"The name for the webhook subscription.","type":"string","minLength":1,"maxLength":100,"example":"CRM Integration","nullable":false},"description":{"type":"string","maxLength":500,"example":"Webhook for CRM integration","nullable":true},"is_enabled":{"description":"A flag to enable or disable the webhook subscription.","type":"boolean","default":false},"endpoint_url":{"description":"The HTTP\/HTTPS URL of the endpoint to receive the POST callback once an event happens.","type":"string","example":"https:\/\/yet-another-cool-crm.example.org","format":"uri"},"event_type_filter":{"$ref":"#\/components\/schemas\/webhook-subscription-event-type-filter-options"}}},"billing-account":{"title":"BillingAccount","description":"The billing account the port-out request was recorded for. Every field is optional: the values are passed through from the billing system, which does not populate all of them for every account.","type":"object","properties":{"display_name":{"description":"The name of the company as it appears in billing.  This will be the legal company name not the displayed name on the company profile.","type":"string","example":"ABC Name","nullable":true},"service_address":{"description":"The service address of the account as a single line, assembled from the address lines, city, state, ZIP code and country the billing system holds. The parts the billing system leaves empty are left out.","type":"string","example":"520 Broad St, Suite 101, Newark, NJ 07102, US","nullable":true},"contact_name":{"description":"The name of the billing contact.","type":"string","example":"Adam Smith","nullable":true},"id":{"description":"The identifier of the account to show for billing.","type":"string","example":"953146","nullable":true}},"nullable":true},"virtual-agent-phone-number-id-reference":{"title":"VirtualAgentPhoneNumberIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/phone-number-id"}}},"activity-report-bucket-common":{"title":"ActivityReportBucketCommon","type":"object","required":["interval_start_time","opened_dialogs_count","done_dialogs_count","average_initial_response_time_seconds"],"properties":{"opened_dialogs_count":{"description":"Number of new dialogues created during this interval. Note: For agent-specific reports, this counts dialogues where the agent eventually became the first responder or started the outbound.","type":"integer"},"done_dialogs_count":{"description":"Number of dialogues that were transitioned to \"Resolved\" status during this interval. Note: The dialogue could have been opened in a previous interval.","type":"integer"},"interval_start_time":{"description":"The start time of the aggregation bucket.","type":"string","format":"date-time"},"average_initial_response_time_seconds":{"description":"Average duration (in seconds) between dialogue creation and the first agent reply. Calculated for dialogues that were opened during this interval. Note: If a dialogue opened in this interval hasn't been replied to yet, it is excluded from the average.","type":"number","nullable":true}}},"batch-set-call-recordings-view-status-command":{"title":"BatchSetCallRecordingsViewStatusCommand","type":"object","required":["requests"],"properties":{"requests":{"items":{"$ref":"#\/components\/schemas\/set-call-recording-view-status-command"},"type":"array","minItems":1,"maxItems":100,"uniqueItems":true}}},"phone-number-display-name":{"title":"PhoneNumberDisplayName","description":"The unique name of the phone number.","type":"string","maxLength":100,"example":"my-phone-number-v1","nullable":false},"limits-payload-limits":{"title":"LimitsPayloadLimits","description":"Structural limits enforced on a request payload, grouped by resource. Unlike quotas, these constrain the shape of a single request (e.g. how many headers it can include) and have no associated usage - every value here is a plain count.","type":"object","required":["tool","mcp_server","mcp_tool_configuration","voice_conversation_template","data_source","data_import"],"properties":{"mcp_server":{"required":["headers","header_values"],"type":"object","properties":{"header_values":{"description":"The maximum number of values a single header can have.","minimum":0,"example":3,"type":"integer"},"headers":{"description":"The maximum number of header entries an MCP server configuration can include.","minimum":0,"example":20,"type":"integer"}}},"data_source":{"required":["per_request"],"type":"object","properties":{"per_request":{"description":"The maximum number of data sources that can be created in a single request.","minimum":0,"example":100,"type":"integer"}}},"mcp_tool_configuration":{"required":["input_mappings"],"type":"object","properties":{"input_mappings":{"description":"The maximum number of input mappings an MCP tool configuration can include.","minimum":0,"example":10,"type":"integer"}}},"data_import":{"required":["max_urls"],"type":"object","properties":{"max_urls":{"description":"The maximum number of URLs a single URL data import can crawl.","minimum":0,"example":100,"type":"integer"}}},"tool":{"required":["inputs","input_properties","input_depth","input_total_properties","request_headers","request_header_values"],"type":"object","properties":{"input_depth":{"description":"The maximum nesting depth allowed for a tool's input schema.","minimum":0,"example":5,"type":"integer"},"request_headers":{"description":"The maximum number of header entries a tool's request can include.","minimum":0,"example":20,"type":"integer"},"input_total_properties":{"description":"The maximum total number of properties allowed across a tool's entire input schema.","minimum":0,"example":100,"type":"integer"},"request_header_values":{"description":"The maximum number of values a single request header can have.","minimum":0,"example":3,"type":"integer"},"inputs":{"description":"The maximum number of top-level inputs a tool can define.","minimum":0,"example":32,"type":"integer"},"input_properties":{"description":"The maximum number of properties allowed on a single object within a tool's input schema.","minimum":0,"example":32,"type":"integer"}}},"voice_conversation_template":{"required":["transfer_scenarios"],"type":"object","properties":{"transfer_scenarios":{"description":"The maximum number of transfer scenarios a voice conversation template can include.","minimum":0,"example":20,"type":"integer"}}}}},"voicemail-owner":{"title":"VoicemailOwner","discriminator":{"propertyName":"type","mapping":{"department":"#\/components\/schemas\/department-typed-reference","user":"#\/components\/schemas\/user-typed-reference"}},"oneOf":[{"$ref":"#\/components\/schemas\/user-typed-reference"},{"$ref":"#\/components\/schemas\/department-typed-reference"}]},"tool":{"title":"Tool","type":"object","required":["id","display_name","description","type","execution_mode","inputs","response"],"properties":{"display_name":{"$ref":"#\/components\/schemas\/tool-display-name"},"description":{"$ref":"#\/components\/schemas\/tool-description"},"created_by":{"$ref":"#\/components\/schemas\/audit-actor"},"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"request":{"$ref":"#\/components\/schemas\/tool-request"},"updated_by":{"$ref":"#\/components\/schemas\/audit-actor"},"response":{"$ref":"#\/components\/schemas\/tool-response"},"type":{"$ref":"#\/components\/schemas\/tool-type"},"execution_mode":{"$ref":"#\/components\/schemas\/tool-execution-mode"},"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"},"inputs":{"$ref":"#\/components\/schemas\/tool-inputs"},"id":{"$ref":"#\/components\/schemas\/tool-id"}}},"assigned-phone-numbers":{"allOf":[{"$ref":"#\/components\/schemas\/virtual-agent-phone-number-id-reference"},{"type":"object","properties":{"display_name":{"$ref":"#\/components\/schemas\/phone-number-display-name"},"phone_number":{"$ref":"#\/components\/schemas\/phone-number-phone-number"}}}],"title":"AssignedPhoneNumbers"},"lookup-available-phone-numbers-command":{"title":"LookupAvailablePhoneNumbersCommand","type":"object","required":["area_code"],"properties":{"area_code":{"$ref":"#\/components\/schemas\/area-code"},"lookup_type":{"$ref":"#\/components\/schemas\/available-phone-number-lookup-type"},"maximum_count":{"description":"The maximum number of Available Phone Numbers to return in response. The maximum value for this will be capped at `maximum phone numbers` (configured on your net2phone account) minus number of phone numbers already added to your account.","minimum":1,"format":"int32","type":"integer","maximum":100,"default":5}}},"department-reference-optional":{"title":"DepartmentReferenceOptional","type":"object","required":["id","display_name"],"properties":{"display_name":{"type":"string","minLength":1,"maxLength":100,"example":"Sales","nullable":false},"id":{"$ref":"#\/components\/schemas\/department-id"}},"nullable":true},"voice-transfer-scenario":{"title":"VoiceTransferScenario","type":"object","required":["display_name","scenario","phone_number"],"properties":{"display_name":{"description":"The unique name of the transfer scenario.","type":"string","maxLength":100,"example":"Transfer to Customer Service","nullable":false},"phone_number":{"description":"The E.164 formatted phone number the Virtual Agent will transfer to in the given scenario.","type":"string","example":15553334444,"nullable":false},"scenario":{"description":"A description of the scenario in which the Virtual Agent should trigger the transfer.","type":"string","maxLength":1024,"example":"Transfer to this number if the user asks for to transfer to a real agent.","nullable":false}}},"timestamp-audit-fields-optional":{"title":"TimestampAuditFieldsOptional","type":"object","properties":{"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"}}},"ring-group-reference":{"allOf":[{"$ref":"#\/components\/schemas\/ring-group-reference-optional"},{"type":"object","nullable":false}],"title":"RingGroupReference"},"message-common-reaction":{"title":"MessageCommonReaction","description":"The chat message reaction.","type":"object","required":["emoji_code","emoji_name","sent_by"],"properties":{"emoji_code":{"example":"1f419","type":"string"},"emoji_name":{"example":"octopus","type":"string"},"sent_by":{"$ref":"#\/components\/schemas\/actor"}}},"create-conversation-message-error":{"title":"CreateConversationMessageError","discriminator":{"propertyName":"type","mapping":{"conversation_pending_client_tool_call":"#\/components\/schemas\/conversation-pending-client-tool-call-error","conversation_ended":"#\/components\/schemas\/conversation-ended-error"}},"type":"object","required":["type"],"oneOf":[{"$ref":"#\/components\/schemas\/conversation-pending-client-tool-call-error"},{"$ref":"#\/components\/schemas\/conversation-ended-error"}],"properties":{"type":{"type":"string"}}},"user-audit-fields-optional":{"title":"UserAuditFieldsOptional","type":"object","properties":{"created_by":{"$ref":"#\/components\/schemas\/user-reference-optional"},"updated_by":{"$ref":"#\/components\/schemas\/user-reference-optional"}}},"create-voice-conversation-template-command":{"title":"CreateVoiceConversationTemplateCommand","type":"object","required":["display_name","initial_greeting","languages"],"properties":{"display_name":{"$ref":"#\/components\/schemas\/voice-conversation-template-display-name"},"description":{"$ref":"#\/components\/schemas\/voice-conversation-template-description"},"background_audio":{"$ref":"#\/components\/schemas\/voice-conversation-template-background-audio"},"transfer_scenarios":{"$ref":"#\/components\/schemas\/voice-transfer-scenarios"},"languages":{"description":"The languages that the Virtual Agent will support for the voice conversation.","type":"array","items":{"$ref":"#\/components\/schemas\/voice-conversation-template-language"}},"inactivity_detection":{"$ref":"#\/components\/schemas\/voice-conversation-template-inactivity-detection"},"initial_greeting":{"allOf":[{"$ref":"#\/components\/schemas\/templated-string"},{"properties":{"value":{"maxLength":1024}}}],"description":"The initial greeting that the Virtual Agent will respond with."},"interrupt_tts":{"description":"Controls whether the bot Text-To-Speech (TTS) will be interrupted when the user speaks.","type":"boolean","default":false},"end_of_speech_silence":{"$ref":"#\/components\/schemas\/voice-conversation-template-end-of-speech-silence"}}},"user-reference":{"allOf":[{"$ref":"#\/components\/schemas\/user-reference-optional"},{"type":"object","nullable":false}],"title":"UserReference"},"webhook-subscription-secret":{"title":"WebhookSubscriptionSecret","type":"object","required":["webhook_subscription_id","secret_value"],"properties":{"secret_value":{"example":"oMekrSUoBkHTh3fv7p3AKytkQqFBgrQW","type":"string","format":"password"},"webhook_subscription_id":{"$ref":"#\/components\/schemas\/string-id"}},"nullable":false},"chat-message-attachment-reference":{"title":"ChatMessageAttachmentReference","description":"Describes the file attached to the chat message.","type":"object","required":["id","filename"],"properties":{"filename":{"description":"Name of the file received from form-data including its extension.","type":"string","example":"avatar.jpg"},"size_bytes":{"description":"Size of the file in bytes.","type":"number","format":"int62"},"id":{"allOf":[{"description":"The key path to the file. Can be used to obtain a temporary URL to access a file without having a user token."},{"example":"2\/2a\/_0syJpUHLC_Q8aCaZsqO0jm1\/avatar.jpg"},{"$ref":"#\/components\/schemas\/string-id"}]}}},"role-optional-deprecated":{"title":"RoleOptionalDeprecated","type":"object","required":["id","display_name"],"example":{"display_name":"Regular User","id":"regular"},"properties":{"display_name":{"type":"string"},"id":{"$ref":"#\/components\/schemas\/role-id-deprecated"}},"nullable":true},"direct-user-message-activity-item-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"enum":["direct_user_message_activity_item"],"type":"string"}}},{"$ref":"#\/components\/schemas\/activity-item-id-reference"}],"example":{"type":"direct_user_message_activity_item","id":"user-456-1234-latest"},"title":"DirectUserMessageActivityItemTypedReference"},"huddle-room-reference":{"allOf":[{"$ref":"#\/components\/schemas\/huddle-room-id-reference"},{"$ref":"#\/components\/schemas\/huddle-room-common"},{"$ref":"#\/components\/schemas\/timestamp-audit-fields-immutable"}],"title":"HuddleRoomReference"},"no-pbx-account-found-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["no_pbx_account_found"],"type":"string","nullable":false}}}],"example":{"type":"no_pbx_account_found","status_code":409,"message":"No active PBX account found.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"NoPbxAccountFoundError"},"messaging-enabled-phone-number-channel-sms-mms":{"title":"MessagingEnabledPhoneNumberChannelSmsMms","type":"object","required":["type","messaging_direction","registration_type","provider","pending_change_request"],"properties":{"provider":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel-sms-mms-provider"},"registration_type":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel-sms-mms-registration-type"},"type":{"enum":["sms_mms"],"type":"string"},"messaging_direction":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel-sms-mms-messaging-direction"},"pending_change_request":{"allOf":[{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel-sms-mms-pending-change-request"}],"description":"Tracks an ongoing registration type change operation. Present during:\n- Initial registration: `registration_type: none` → target type\n- Type change: current type → different type\n- Unregistration: current type → `none`\n\nWhen absent, the channel is in a stable state with no pending changes.","nullable":true},"campaign_registry_campaign":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-campaign-registry-campaign"}}},"webhook-subscription-event-type-filter":{"title":"WebhookSubscriptionEventTypeFilter","type":"object","required":["include_all_current_and_future_event_types","event_types"],"properties":{"include_all_current_and_future_event_types":{"type":"boolean"},"event_types":{"description":"If `include_all_current_and_future_event_types` is set to `true`, then all currently available event types are returned.","type":"array","items":{"$ref":"#\/components\/schemas\/webhook-event-type"}}},"nullable":true},"chat-message-route-department":{"allOf":[{"$ref":"#\/components\/schemas\/department-typed-reference-optional"},{"$ref":"#\/components\/schemas\/chat-message-route-common"}],"title":"ChatMessageRouteDepartment"},"call-endpoint":{"anyOf":[{"$ref":"#\/components\/schemas\/e164-phone-number"},{"$ref":"#\/components\/schemas\/phone-extension"}],"description":"A E.164 phone number or an extension.","title":"CallEndpoint"},"webhook-call-scope":{"title":"WebhookCallScope","description":"The kind of a call. `null` in a filter means no restriction by the kind of a call. A call is `internal` when both the originating and the dialed number are extensions of the account; any other call is `external`. A call to a colleague dialed by their full phone number (DID) is `external`.","type":"string","x-n2p-enum":{"values":[{"name":"Internal Call","description":"A call between two extensions of the account.","value":"internal"},{"name":"External Call","description":"A call to or from a phone number outside of the account.","value":"external"}],"name":"WebhookCallScope","modelAsString":false},"enum":["internal","external",null],"nullable":true},"call-detail-record-typed":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"enum":["call_detail_record"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-detail-record"}],"title":"CallDetailRecordTyped"},"call-activity-item-reference":{"title":"CallActivityItemReference","type":"object","required":["id","period_iana_timezone_id"],"properties":{"period_iana_timezone_id":{"$ref":"#\/components\/schemas\/call-activity-item-period-iana-timezone-id"},"id":{"$ref":"#\/components\/schemas\/call-activity-item-id"}}},"chat-text-message":{"allOf":[{"$ref":"#\/components\/schemas\/chat-text-message-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-common"},{"required":["can_be_edited","can_be_deleted","can_reaction_be_added","status"],"type":"object","properties":{"can_be_edited":{"description":"Indicates whether the message can be edited by the current user.","type":"boolean"},"can_reaction_be_added":{"description":"Indicates whether reaction can be added to the message by the current user.","type":"boolean"},"content_type":{"description":"The content mime-type. Currently \"text\/html\" or \"text\/x-markdown\".","type":"string","example":"text\/html"},"updated_by":{"$ref":"#\/components\/schemas\/actor"},"reactions":{"items":{"$ref":"#\/components\/schemas\/message-common-reaction"},"type":"array"},"attachments":{"items":{"$ref":"#\/components\/schemas\/chat-message-attachment-reference"},"type":"array"},"content":{"type":"string"},"can_be_deleted":{"description":"Indicates whether the message can be deleted by the current user.","type":"boolean"},"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"status":{"$ref":"#\/components\/schemas\/message-common-status"}}}],"title":"ChatTextMessage","deprecated":true},"call-forwarding-list-entry":{"title":"CallForwardingListEntry","type":"object","required":["target","rings_count"],"properties":{"target":{"allOf":[{"$ref":"#\/components\/schemas\/call-endpoint"}],"description":"Phone number or extension to forward to."},"rings_count":{"description":"Number of rings for a specific phone number or extension. In `simultaneous` mode the value must match for every item in the forwarding list and the maximum value is 20. In `sequential` mode the maximum value is 19 and can be configured per each list entry.","minimum":2,"maximum":20,"example":3,"type":"integer","format":"int32"}}},"update-pbx-directory-configuration-command":{"title":"UpdatePbxDirectoryConfigurationCommand","type":"object","required":["directory_access_enabled"],"properties":{"directory_access_enabled":{"description":"Set to true to enable the Agent to access your PBX directory.","type":"boolean"}}},"messaging-enabled-phone-number-channel-sms-mms-pending-change-request":{"title":"MessagingEnabledPhoneNumberChannelSmsMmsPendingChangeRequest","description":"Tracks an in-flight asynchronous registration type change operation.\nThis field is present when a registration, unregistration, or type change operation is in progress or has failed.\nWhen the operation completes successfully, this field is removed and `registration_type`\nis updated to reflect the new state.","type":"object","required":["registration_type","status","initiated_at_time"],"properties":{"initiated_at_time":{"description":"The time when this pending change request was initiated.","type":"string","format":"date-time"},"registration_type":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel-sms-mms-registration-type"},"error":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel-sms-mms-pending-change-request-error"},"messaging_direction":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel-sms-mms-messaging-direction"},"status":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel-sms-mms-pending-change-request-status"}}},"chat-message-id-reference":{"title":"ChatMessageIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/chat-message-id"}}},"webhook-subscription-user-filter":{"title":"WebhookSubscriptionUserFilter","type":"object","required":["users","call_scope"],"properties":{"call_scope":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-call-scope"}],"description":"The kind of calls the subscription is restricted to; `null` means both internal and external calls."},"users":{"items":{"$ref":"#\/components\/schemas\/user-reference"},"type":"array"}},"nullable":true},"create-conversation-command":{"title":"CreateConversationCommand","type":"object","required":["virtual_agent_id"],"properties":{"session":{"allOf":[{"$ref":"#\/components\/schemas\/conversation-supplied-session"}],"description":"Optional session values for the conversation. They can only be set here, at creation, and stay fixed for the life of the conversation, the same as on a call. This operation always creates a chat conversation; voice and messaging conversations are created by the platform and take these values from the carrier instead."},"context":{"description":"Optional JSON object that initializes the conversation's context.","type":"object","additionalProperties":true},"initial_agent_messages":{"description":"Messages generated by the Virtual Agent before any user message, such as a greeting.","type":"array","items":{"$ref":"#\/components\/schemas\/templated-string"}},"virtual_agent_id":{"$ref":"#\/components\/schemas\/virtual-agent-id"}}},"conversation-created-message-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"Conversation created message type.","type":"string","enum":["conversation_created"]}}},{"$ref":"#\/components\/schemas\/chat-message-id-reference"}],"example":{"type":"conversation_created","id":"42"},"title":"ConversationCreatedMessageIdTypedReference"},"call-screening-mode":{"title":"CallScreeningMode","description":"Shows if a call screening mode was enabled (with or without `caller_name_recording`) or disabled.","type":"string","x-n2p-enum":{"values":[{"description":"Marks the Call Screening mode as enabled_without_caller_name_recording.","name":"Enabled without caller name recording","value":"enabled_without_caller_name_recording"},{"description":"Marks the Call Screening mode as enabled_with_caller_name_recording.","name":"Enabled with caller name recording","value":"enabled_with_caller_name_recording"},{"description":"Marks the Call Screening mode as disabled.","name":"Disabled","value":"disabled"}],"name":"CallScreeningMode","modelAsString":false},"enum":["enabled_without_caller_name_recording","enabled_with_caller_name_recording","disabled"],"default":"disabled"},"chat-message-route-ring-group":{"allOf":[{"$ref":"#\/components\/schemas\/ring-group-typed-reference-optional"},{"$ref":"#\/components\/schemas\/chat-message-route-common"}],"title":"ChatMessageRouteRingGroup"},"phone-number-reference":{"allOf":[{"$ref":"#\/components\/schemas\/virtual-agent-phone-number-id-reference"},{"required":["phone_number","display_name"],"type":"object","properties":{"display_name":{"$ref":"#\/components\/schemas\/phone-number-display-name"},"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"},"created_by":{"$ref":"#\/components\/schemas\/audit-actor"},"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"phone_number":{"$ref":"#\/components\/schemas\/phone-number-phone-number"},"updated_by":{"$ref":"#\/components\/schemas\/audit-actor"}}}],"title":"PhoneNumberReference"},"direct-user-conversation-item":{"title":"DirectUserConversationItem","discriminator":{"propertyName":"type","mapping":{"text_message":"#\/components\/schemas\/chat-text-message","huddle_call_ended":"#\/components\/schemas\/huddle-call-ended","chat_message":"#\/components\/schemas\/chat-message","call_detail_record":"#\/components\/schemas\/call-detail-record-typed","huddle_conference_invitation_message":"#\/components\/schemas\/huddle-conference-invitation-message"}},"oneOf":[{"$ref":"#\/components\/schemas\/call-detail-record-typed"},{"$ref":"#\/components\/schemas\/huddle-call-ended"},{"$ref":"#\/components\/schemas\/huddle-conference-invitation-message"},{"$ref":"#\/components\/schemas\/chat-text-message"},{"$ref":"#\/components\/schemas\/chat-message"}]},"voice-conversation-template-response":{"allOf":[{"$ref":"#\/components\/schemas\/voice-conversation-template"},{"type":"object","properties":{"phone_numbers":{"description":"The list of assigned phone numbers.","type":"array","items":{"$ref":"#\/components\/schemas\/assigned-phone-numbers"}}}}],"title":"VoiceConversationTemplateResponse"},"tool-call-error-container":{"title":"ToolCallErrorContainer","description":"Error information for the tool call, if any.","type":"object","properties":{"truncated_http_response":{"description":"Partial truncated http response.","nullable":true,"type":"string"},"error_message":{"description":"Human-readable explanation of the error that occurred during the tool call. Intended to help identify the cause of failure or provide diagnostic details.","type":"string"}},"nullable":true},"mcp-tool-configuration-description":{"title":"McpToolConfigurationDescription","description":"Overrides the description of the tool from the MCP Server.","type":"string","maxLength":1024,"example":"Description of the tool","nullable":true},"string-id-nullable":{"title":"StringIdNullable","description":"Unique identifier of the resource (entity) within an account.","type":"string","minLength":1,"example":"1","nullable":true},"mcp-server-tool-configuration-create-maximum-mcp-tool-configurations-limit-reached-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["maximum_mcp_tool_configurations_limit_reached_error"],"type":"string","nullable":false}}}],"example":{"type":"maximum_mcp_tool_configurations_limit_reached_error","status_code":409,"message":"The MCP Tool Configuration cannot be created because the maximum number of MCP Tool Configurations was reached for the MCP Server.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"McpServerToolConfigurationCreateMaximumMcpToolConfigurationsLimitReachedError"},"webhook-subscription-pbx":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-subscription-id-reference"},{"$ref":"#\/components\/schemas\/create-webhook-subscription-command-base"},{"$ref":"#\/components\/schemas\/timestamp-audit-fields-optional"},{"$ref":"#\/components\/schemas\/user-audit-fields-optional"},{"required":["platform"],"type":"object","properties":{"secret":{"$ref":"#\/components\/schemas\/webhook-subscription-secret"},"updated_by_user":{"readOnly":true,"description":"The ID of the authenticated user who last updated the webhook subscription. Populated automatically by the server.","allOf":[{"$ref":"#\/components\/schemas\/string-id-nullable"}]},"owner_type":{"$ref":"#\/components\/schemas\/webhook-subscription-owner-type"},"platform":{"description":"The platform this webhook subscription belongs to.","type":"string","readOnly":true,"enum":["pbx"]},"created_by_user":{"readOnly":true,"description":"The ID of the authenticated user who created the webhook subscription. Populated automatically by the server.","allOf":[{"$ref":"#\/components\/schemas\/string-id-nullable"}]},"event_type_filter":{"$ref":"#\/components\/schemas\/webhook-subscription-event-type-filter"},"scope_filter":{"$ref":"#\/components\/schemas\/webhook-subscription-user-filter"}}}],"title":"WebhookSubscriptionPbx"},"mms-message":{"allOf":[{"$ref":"#\/components\/schemas\/mms-message-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-common"},{"required":["attachments","content_type","status"],"type":"object","properties":{"attachments":{"items":{"$ref":"#\/components\/schemas\/chat-message-attachment-reference"},"type":"array"},"content":{"type":"string"},"content_type":{"example":"text\/plain","type":"string"},"status":{"$ref":"#\/components\/schemas\/message-common-status"}}}],"title":"MmsMessage"},"webhook-event":{"title":"WebhookEvent","type":"object","required":["id","timestamp"],"properties":{"timestamp":{"description":"Date and time when the event was triggered.","type":"string","format":"date-time"},"id":{"$ref":"#\/components\/schemas\/webhook-event-id"}}},"channel-conversation-id-reference":{"title":"ChannelConversationIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/channel-conversation-id"}}},"user-call-forwarding-settings":{"title":"UserCallForwardingSettings","type":"object","properties":{"replace_original_caller_id":{"description":"Show user's phone number rather than the original caller's phone number.","type":"boolean","default":false},"forwarding_list":{"description":"Phone numbers or extensions to forward to. For the `sequential` ring strategy, the position in the array matters.","type":"array","items":{"$ref":"#\/components\/schemas\/call-forwarding-list-entry"}},"is_enabled":{"description":"Determines if call forwarding is enabled for a given user. The `true` setting only takes effect if `mode` is set and the forwarding phone numbers are provided.","type":"boolean","default":false},"ring_strategy":{"$ref":"#\/components\/schemas\/call-forwarding-ring-strategy"},"call_screening_mode":{"$ref":"#\/components\/schemas\/call-screening-mode"},"mode":{"$ref":"#\/components\/schemas\/call-forwarding-mode"}}},"tool-reference":{"title":"ToolReference","type":"object","properties":{"display_name":{"$ref":"#\/components\/schemas\/tool-display-name"},"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"execution_mode":{"description":"The execution mode of the tool.","type":"string"},"id":{"allOf":[{"$ref":"#\/components\/schemas\/tool-id"}],"nullable":true}}},"channel-conversation-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"Channel conversation type.","type":"string","enum":["channel_conversation"]}}},{"$ref":"#\/components\/schemas\/channel-conversation-id-reference"}],"example":{"type":"channel_conversation","id":"42"},"title":"ChannelConversationIdTypedReference"},"sms-message":{"allOf":[{"$ref":"#\/components\/schemas\/sms-message-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-common"},{"required":["content","content_type","status"],"type":"object","properties":{"content_type":{"example":"text\/plain","type":"string"},"status":{"$ref":"#\/components\/schemas\/message-common-status"},"content":{"type":"string"}}}],"title":"SmsMessage"},"tool-call-mcp-reference":{"title":"ToolCallMcpReference","description":"This object will be populated if the tool call is from a MCP server.","type":"object","properties":{"server_id":{"$ref":"#\/components\/schemas\/mcp-server-id"}},"nullable":true},"mcp-tool-configuration-tool-name":{"title":"McpToolConfigurationToolName","description":"The unique tool name of a tool from the MCP Server.","type":"string","maxLength":64,"example":"my-tool-v1","nullable":false},"whatsapp-session-media-message-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"A WhatsApp [multimedia message](https:\/\/developers.facebook.com\/docs\/whatsapp\/cloud-api\/reference\/media\/#supported-media-types) with an optional text caption.","type":"string","enum":["whatsapp_session_media"]}}},{"$ref":"#\/components\/schemas\/chat-message-id-reference"}],"example":{"type":"whatsapp_session_media","id":"42"},"title":"WhatsappSessionMediaMessageIdTypedReference"},"create-mcp-server-command":{"title":"CreateMcpServerCommand","type":"object","required":["display_name","server_url"],"properties":{"display_name":{"$ref":"#\/components\/schemas\/mcp-server-display-name"},"description":{"$ref":"#\/components\/schemas\/mcp-server-description"},"headers":{"$ref":"#\/components\/schemas\/mcp-server-headers"},"tool_filter":{"$ref":"#\/components\/schemas\/mcp-server-tool-filter"},"server_url":{"$ref":"#\/components\/schemas\/mcp-server-server-url"}}},"direct-user-conversation-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the direct user conversation.","example":"1234-4321","title":"DirectUserConversationId"},"tool-call":{"title":"ToolCall","description":"This object will be populated if the message is from a tool call.","type":"object","properties":{"started_at_time":{"description":"The timestamp when the tool call started.","type":"string","nullable":true,"format":"date-time"},"error":{"$ref":"#\/components\/schemas\/tool-call-error-container"},"tool":{"$ref":"#\/components\/schemas\/tool-reference"},"mcp":{"$ref":"#\/components\/schemas\/tool-call-mcp-reference"},"ended_at_time":{"description":"The timestamp when the tool call ended.","type":"string","nullable":true,"format":"date-time"},"inputs":{"description":"Arbitrary key-value input parameters passed to the tool.","type":"object","additionalProperties":true,"nullable":true},"http_status_code":{"description":"HTTP status code returned by the tool, if applicable.","type":"integer","nullable":true}},"nullable":true},"not-supported-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["not_supported_error"],"type":"string","nullable":false}}}],"example":{"type":"not_supported_error","status_code":422,"message":"The attempted operation is not supported with the current net2phone account type.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"NotSupportedError"},"background-audio-source":{"title":"BackgroundAudioSource","description":"The description of the source of a Voice Conversation Template's background audio.","type":"object","properties":{"filename":{"description":"A user-facing display name to identify the background audio.","type":"string"},"type":{"description":"Whether the default background audio is used or a user-provided file.","type":"string","enum":["default","custom"]}}},"direct-user-conversation-id-reference":{"title":"DirectUserConversationIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/direct-user-conversation-id"}}},"chat-message-attachment-id-reference":{"title":"ChatMessageAttachmentIdReference","type":"object","properties":{"id":{"$ref":"#\/components\/schemas\/chat-message-attachment-id"}}},"phone-number-id-2":{"allOf":[{"$ref":"#\/components\/schemas\/e164-phone-number-no-plus"},{"description":"The Phone Number which is used as the identifier.","type":"string","example":"15307636905","nullable":false}],"title":"PhoneNumberId2"},"direct-user-conversation-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"Conversation type.","type":"string","enum":["direct_user_conversation"]}}},{"$ref":"#\/components\/schemas\/direct-user-conversation-id-reference"}],"example":{"type":"direct_user_conversation","id":"1234-4321"},"title":"DirectUserConversationIdTypedReference"},"user-id":{"title":"UserId","description":"Unique identifier of the user within an account.","type":"string","minLength":1,"example":"1"},"anonymous-callers-block-level":{"title":"AnonymousCallersBlockLevel","description":"Describes if incoming calls from anonymous calls are blocked for all users under account or for the current user making the API request. Set to `null` if anonymous calls are allowed.","type":"string","x-n2p-enum":{"values":[{"name":"Account","description":"Block anonymous callers for all users in the net2phone account.","value":"account"},{"name":"User","description":"Block anonymous callers for the current user making this API request.","value":"user"}],"name":"AnonymousCallersBlockLevel","modelAsString":false},"enum":["account","user",null],"nullable":true,"default":null},"user-call-recording-settings":{"title":"UserCallRecordingSettings","type":"object","properties":{"is_enabled":{"description":"Determines if the call recording is enabled for a given user.\n* If `true`, all incoming and outgoing calls to\/from this user will be recorded.\n* If `false`, direct calls to the user's extension or the assigned phone number will not be recorded.\nHowever the calls answered or made by the user can still be recorded if shared phone numbers or extensions are involved.\nFor example, if this user answers an incoming call to a department or a ring group with recording enabled.","type":"boolean","default":false}}},"virtual-fax-id-reference":{"title":"VirtualFaxIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/phone-number-id-2"}}},"direct-group-conversation-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the direct group conversation.","example":"12-42-67","title":"DirectGroupConversationId"},"conversation-message":{"allOf":[{"$ref":"#\/components\/schemas\/conversation-message-id-reference"},{"type":"object","properties":{"usage":{"$ref":"#\/components\/schemas\/usage"},"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"},"role":{"$ref":"#\/components\/schemas\/conversation-message-role"},"content":{"description":"The message text content.","type":"string","example":"Hello"},"client_tool_call_request":{"$ref":"#\/components\/schemas\/client-tool-call-request"},"tool_call":{"$ref":"#\/components\/schemas\/tool-call"}}}],"title":"ConversationMessage"},"create-virtual-agent-command":{"title":"CreateVirtualAgentCommand","type":"object","required":["display_name"],"properties":{"display_name":{"$ref":"#\/components\/schemas\/virtual-agent-display-name"},"description":{"$ref":"#\/components\/schemas\/virtual-agent-description"},"llm_model_tier":{"$ref":"#\/components\/schemas\/virtual-agent-llm-model-tier"},"time_settings":{"allOf":[{"$ref":"#\/components\/schemas\/virtual-agent-time-settings"}],"description":"Time settings for the Virtual Agent. Defaults to `timezone` of `UTC` and `inject_datetime` of `false` if not provided.","nullable":true},"summary_language":{"$ref":"#\/components\/schemas\/conversation-summary-language"},"llm_model_id":{"$ref":"#\/components\/schemas\/virtual-agent-llm-model-id"},"prompt":{"allOf":[{"$ref":"#\/components\/schemas\/templated-string"},{"properties":{"value":{"maxLength":20000}}}],"description":"Prompt with instructions to the Virtual Agent. The service limits the value to 20000 bytes of UTF-8, so a value containing multi-byte characters is rejected before reaching 20000 characters."},"messaging_settings":{"allOf":[{"$ref":"#\/components\/schemas\/virtual-agent-messaging-settings"}],"description":"Messaging settings for the Virtual Agent. Defaults to `inactivity_timeout_minutes` of 1440 (24 hours) if not provided.","nullable":true},"chat_settings":{"allOf":[{"$ref":"#\/components\/schemas\/virtual-agent-chat-settings"}],"description":"Chat settings for the Virtual Agent. Defaults to `inactivity_timeout_minutes` of 1440 (24 hours) if not provided.","nullable":true}}},"call-pickup-event":{"allOf":[{"required":["pickup_event_info","user","event"],"type":"object","properties":{"pickup_event_info":{"$ref":"#\/components\/schemas\/call-pickup-user"},"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user who used the pickup feature."},"event":{"enum":["call_pickup"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallPickupEvent"},"direct-group-conversation-id-reference":{"title":"DirectGroupConversationIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/direct-group-conversation-id"}}},"virtual-agent-llm-model-id":{"title":"VirtualAgentLlmModelId","description":"The identifier of the LLM model the Virtual Agent uses, corresponding to the `id` of a model returned by the `List virtual agent models` operation. Optional. When omitted or `null`, `llm_model_tier` must be set to `standard` or `premium`.","type":"string","example":"premium-1.0","nullable":true},"pickup-feature-extension":{"pattern":"^\\*97[1-9]\\d{2,3}$","type":"string","example":"*97203","title":"PickupFeatureExtension"},"direct-group-conversation-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"Conversation type.","type":"string","enum":["direct_group_conversation"]}}},{"$ref":"#\/components\/schemas\/direct-group-conversation-id-reference"}],"example":{"type":"direct_group_conversation","id":"12-42-67"},"title":"DirectGroupConversationIdTypedReference"},"phone-number-bound-conversation-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"Conversation type.","type":"string","enum":["phone_number_bound_conversation"]}}},{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-id-reference"}],"example":{"type":"phone_number_bound_conversation","id":"15307636905-12025550153"},"title":"PhoneNumberBoundConversationIdTypedReference"},"region-code-filter-value":{"title":"RegionCodeFilterValue","oneOf":[{"$ref":"#\/components\/schemas\/region-code"},{"description":"A special token to filter out on regions detected from the request information.","type":"string","enum":["@request_region_code"]}]},"ring-all-call-queue-ring-strategy":{"title":"RingAllCallQueueRingStrategy","description":"When a caller enters a queue, the call is forwarded to all available agents in the queue.","type":"object","required":["type"],"example":{"type":"ring_all"},"properties":{"type":{"enum":["ring_all"],"type":"string"}}},"phone-number-bound-conversation-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the phone number bound conversation.","example":"15307636905-12025550153","title":"PhoneNumberBoundConversationId"},"webhook-event-type-id":{"title":"WebhookEventTypeId","type":"string","x-n2p-enum":{"values":[{"description":"This event is triggered when a call is ringing. This event will trigger for both inbound and outbound calls and is typically followed by by a `call_answered` or `call_missed` event.","name":"Call Ringing","value":"call_ringing"},{"description":"This event is triggered when a call is placed to an emergency service.","name":"Emergency Call Placed","value":"emergency_call"},{"description":"This event is triggered when a user answers an incoming call or when an outgoing call is answered by the dialed number.","name":"Call Answered","value":"call_answered"},{"description":"This event is triggered when a user uses `pickup` feature (by dialing *97{other-user-extension}) to answer call ringing on another user extension.","name":"Call Pickup","value":"call_pickup"},{"description":"This event is triggered when a call (inbound\/outbound) is completed. Doesn't matter if the call is answered\/failed.","name":"Call Completed","value":"call_completed"},{"description":"Provides a summary of a call triggered by the click-to-call flow.","name":"Click-To-Call Result","value":"click_to_call_result"},{"description":"This event is triggered when an incoming call isn’t answered by any user in your net2phone account.","name":"Call Missed","value":"call_missed"},{"description":"This event is triggered when you receive a call from a blocked (either at user level or account level) number.","name":"Call Blocked","value":"call_blocked"},{"description":"The event is triggered when an outbound call receives a 4xx or 5xx error response to the INVITE indicating the call failed for some reason.","name":"Call Busy","value":"call_busy"},{"description":"This event is triggered when a user parks a call in a parking slot by pressing `#2` from the dial-pad while he is on a call.","name":"Call Park","value":"call_park"},{"description":"This event is triggered when a user retrieves a call from a parking slot.","name":"Call Unpark","value":"call_unpark"},{"description":"This event is triggered when a user (caller or callee) puts the call on hold.","name":"Call Hold","value":"call_hold"},{"description":"This event is triggered when a user (caller or callee) resumes the call from `hold` state.","name":"Call Resume","value":"call_resume"},{"description":"This event is triggered when an incoming call is forwarded to the number specified in the call forwarding options of a user.","name":"Call Forward","value":"call_forward"},{"description":"This event is triggered when a user transfer a call to another user\/department\/ring group via blind transfer (default) option.","name":"Call Blind Transfer","value":"call_blind_transfer"},{"description":"This event is triggered when a user transfers a call via consultative transfer (also referred as warm transfer).","name":"Call Consultative Transfer","value":"call_consultative_transfer"},{"description":"This event is triggered when an inbound\/outbound call has been successfully recorded.","name":"Call Recorded","value":"call_recorded"},{"description":"This event is triggered when a call failed to record.","name":"Call Recording Failed","value":"call_recording_failed"},{"name":"Call Recording Analytics Results","description":"This event is triggered when the analysis on a call recording is completed or failed.","value":"call_recording_analytics_results"},{"description":"This event is triggered when a call enters a ring group with call queue enabled.","name":"Call Ring Group Queue Entered","value":"call_rg_queue_entered"},{"description":"This event is triggered when a call waiting in a ring group with call queue enabled enters a tier which results in calls being sent to a user in that tier.","name":"Call Ring Group Tier Ringing","value":"call_rg_queue_tier"},{"description":"This event is triggered when a call in a ring group completes by either being answered in a tier or the caller hangs up.","name":"Call Ring Group Queue Completed","value":"call_rg_queue_completed"},{"description":"This event is triggered when an incoming call is not answered by a user who has enabled voice mail recording, and the caller successfully records a voice mail.","name":"Voicemail Received","value":"voicemail_received"},{"description":"This event is triggered when a user reaches the voice mail service (by dialing *95) to listen\/manage their unread voice mails.","name":"Voicemail Notify","value":"voicemail_notify"},{"description":"This event is triggered when an incoming call is sent to a user's voicemail but the caller doesn't leave a voicemail. A common scenario for this would be the case where the callers hangs up before leaving a voicemail (before the beep sound).","name":"Voicemail Missed","value":"voicemail_missed"},{"x-n2p-node-kinds":["unite"],"name":"Message Received","value":"message_received"},{"x-n2p-node-kinds":["unite"],"name":"Message Sent","value":"message_sent"},{"x-n2p-node-kinds":["ai_agent"],"description":"This event is triggered when an AI Agent conversation has ended. Only users with the `virtualagent.*` permission can subscribe to this event.\n","value":"ai_agent_conversation_ended","name":"AI Agent - Conversation Ended"},{"x-n2p-node-kinds":["ai_agent"],"description":"This event is triggered once per conversation when the AI-generated summary task reaches an end state (`completed`, `failed`, or `skipped`), typically seconds after the conversation ends and independently of the call recording. `summary` is `null` when the status is `failed` or `skipped`. No ordering is guaranteed relative to `ai_agent_conversation_ended`. Only users with the `virtualagent.*` permission can subscribe to this event.\n","value":"ai_agent_conversation_summary_finished","name":"AI Agent - Conversation Summary Finished"}],"name":"WebhookEventType","modelAsString":false},"enum":["call_ringing","emergency_call","call_answered","call_pickup","call_completed","click_to_call_result","call_missed","call_blocked","call_busy","call_park","call_unpark","call_hold","call_resume","call_forward","call_blind_transfer","call_consultative_transfer","call_recorded","call_recording_failed","call_recording_analytics_results","call_rg_queue_entered","call_rg_queue_tier","call_rg_queue_completed","voicemail_received","voicemail_notify","voicemail_missed","message_received","message_sent","ai_agent_conversation_ended","ai_agent_conversation_summary_finished"]},"avatar-image-size":{"title":"AvatarImageSize","description":"The size of the image in pixels (for a resized image). Both width and height will be same for a resized image. It only holds value if the avatar image is resized.","type":"integer","example":400,"nullable":true,"format":"int32"},"call-queue-agent-call-details":{"title":"CallQueueAgentCallDetails","type":"object","properties":{"caller":{"$ref":"#\/components\/schemas\/call-queue-caller-common"},"answer_time":{"nullable":true,"type":"string","format":"date-time"},"from":{"$ref":"#\/components\/schemas\/call-endpoint"}}},"round-robin-call-queue-ring-strategy":{"title":"RoundRobinCallQueueRingStrategy","description":"When a caller enters a queue, the call is forwarded to the first agent in line. If the agent doesn't answer within X `rings_count`, we ring the second agent and so on.","type":"object","required":["rings_count","type"],"example":{"rings_count":10,"type":"round_robin"},"properties":{"rings_count":{"minimum":2,"type":"integer","default":4},"type":{"enum":["round_robin"],"type":"string"}}},"role-optional":{"type":"object","properties":{"display_name":{"type":"string"},"id":{"$ref":"#\/components\/schemas\/role-id"}},"required":["id","display_name"],"example":{"display_name":"Regular User","id":"regular"},"nullable":true,"title":"RoleOptional"},"sip-trunk-account-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the SIP trunk account.","title":"SipTrunkAccountId"},"direct-group-conversation-item":{"title":"DirectGroupConversationItem","discriminator":{"propertyName":"type","mapping":{"text_message":"#\/components\/schemas\/chat-text-message","conversation_created":"#\/components\/schemas\/conversation-created","chat_message":"#\/components\/schemas\/chat-message","huddle_conference_invitation_message":"#\/components\/schemas\/huddle-conference-invitation-message"}},"oneOf":[{"$ref":"#\/components\/schemas\/conversation-created"},{"$ref":"#\/components\/schemas\/huddle-conference-invitation-message"},{"$ref":"#\/components\/schemas\/chat-text-message"},{"$ref":"#\/components\/schemas\/chat-message"}]},"call-recording-analytics-job-results-transcription-download-url":{"title":"CallRecordingAnalyticsJobResultsTranscriptionDownloadUrl","description":"A temporary link to download a JSON file that contains the transcription of the call. Please note that this is only populated if the `transcription` task was completed.","type":"object","required":["url","expires_at_time"],"properties":{"expires_at_time":{"description":"The expiration time of the download link. After this time, the URL will no longer be valid.","type":"string","example":"2025-03-17T20:12:18.856Z","format":"date-time"},"url":{"description":"A temporary URL to download the transcription file. The file is in JSON format and contains the full transcription data.","type":"string","minLength":1}},"nullable":true},"virtual-agent-llm-model-tier":{"title":"VirtualAgentLlmModelTier","description":"**Deprecated.** Use `llm_model_id` instead. When `llm_model_id` is not provided (null), this tier is used to select the model.","type":"string","enum":["standard","premium"],"deprecated":true},"ring-longest-idle-call-queue-ring-strategy":{"title":"RingLongestIdleCallQueueRingStrategy","description":"It is a strategy used to ensure that calls are distributed fairly among agents, by giving priority to the agent who has been idle for the longest period of time.","type":"object","required":["type"],"example":{"type":"ring_longest_idle"},"properties":{"type":{"enum":["ring_longest_idle"],"type":"string"}}},"user-reference-optional":{"title":"UserReferenceOptional","description":"Describes a minimized version of User resource to reference in other resources.","type":"object","required":["id","first_name","last_name","email","role","is_deleted"],"nullable":true,"properties":{"id":{"$ref":"#\/components\/schemas\/string-id"},"avatar":{"$ref":"#\/components\/schemas\/avatar"},"role":{"$ref":"#\/components\/schemas\/role"},"last_name":{"example":"Doe","type":"string"},"is_deleted":{"description":"Describes if the specified user is deleted or not.","type":"boolean","default":false},"first_name":{"example":"John","type":"string"},"email":{"example":"john.doe@example.com","type":"string","format":"email"}}},"direct-group-conversation-create-item-command":{"title":"DirectGroupConversationCreateItemCommand","type":"object","properties":{"attachments":{"items":{"$ref":"#\/components\/schemas\/chat-message-attachment-id-reference"},"type":"array"},"content":{"description":"Text content of the sent message.","type":"string"}}},"message-delivery-acknowledgment-type":{"title":"MessageDeliveryAcknowledgmentType","description":"Delivery acknowledgement type of the message.","type":"string","x-n2p-enum":{"values":[{"description":"Message was successfully delivered","name":"Delivered","value":"delivered"},{"description":"Message was not successfully delivered","name":"Failed","value":"failed"},{"description":"Message currently is in pending state","name":"Pending","value":"pending"}],"name":"MessageDeliveryAcknowledgmentType","modelAsString":false},"enum":["delivered","failed","pending"],"nullable":true},"webhook-message-2":{"title":"WebhookMessage2","type":"object","required":["conversation_id","message_id","type","originated","terminated","originating_entity","content"],"properties":{"conversation_id":{"$ref":"#\/components\/schemas\/conversation-id-2"},"originating_entity":{"$ref":"#\/components\/schemas\/originating-entity"},"content_type":{"description":"MIME type of the media file. Present only for WhatsAppMedia messages.","type":"string","example":"image\/jpeg"},"originated":{"allOf":[{"$ref":"#\/components\/schemas\/e164-phone-number-no-plus"},{"description":"The phone number within the net2phone account that sent the message."}]},"terminated":{"allOf":[{"$ref":"#\/components\/schemas\/e164-phone-number-no-plus"},{"description":"The external phone number that received the message."}]},"type":{"$ref":"#\/components\/schemas\/message-sent-type"},"content":{"$ref":"#\/components\/schemas\/message-content"},"caption":{"description":"Optional text caption accompanying a WhatsApp media message.","type":"string"},"template_id":{"description":"Identifier of the WhatsApp template that was sent. Present only for WhatsApp template message types.","type":"string"},"message_id":{"$ref":"#\/components\/schemas\/conversation-event-id"},"content_parts":{"$ref":"#\/components\/schemas\/webhook-message-content-parts"}}},"call-queue-ring-strategy":{"title":"CallQueueRingStrategy","discriminator":{"propertyName":"type","mapping":{"round_robin":"#\/components\/schemas\/round-robin-call-queue-ring-strategy","ring_all":"#\/components\/schemas\/ring-all-call-queue-ring-strategy","ring_longest_idle":"#\/components\/schemas\/ring-longest-idle-call-queue-ring-strategy"}},"oneOf":[{"$ref":"#\/components\/schemas\/ring-all-call-queue-ring-strategy"},{"$ref":"#\/components\/schemas\/round-robin-call-queue-ring-strategy"},{"$ref":"#\/components\/schemas\/ring-longest-idle-call-queue-ring-strategy"}],"description":"Call queue ring strategy settings."},"conversation-message-turn-response":{"allOf":[{"$ref":"#\/components\/schemas\/conversation-message-id-reference"},{"type":"object","properties":{"usage":{"$ref":"#\/components\/schemas\/usage"},"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"},"content":{"description":"The message text content.","type":"string","example":"Hello"},"client_tool_call_request":{"$ref":"#\/components\/schemas\/client-tool-call-request"},"role":{"$ref":"#\/components\/schemas\/conversation-message-role"}}}],"title":"ConversationMessageTurnResponse"},"direct-group-message-activity-item-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"enum":["direct_group_message_activity_item"],"type":"string"}}},{"$ref":"#\/components\/schemas\/activity-item-id-reference"}],"example":{"type":"direct_group_message_activity_item","id":"group-1234-333-456-latest"},"title":"DirectGroupMessageActivityItemTypedReference"},"create-blocked-caller-command":{"allOf":[{"$ref":"#\/components\/schemas\/update-blocked-caller-command"},{"required":["phone_number_pattern"],"type":"object","properties":{"phone_number_pattern":{"pattern":"^\\+?[0-9]{0,20}\\*?$","description":"A pattern to match one or more numbers to block.","type":"string","minLength":1}}}],"type":"object","title":"CreateBlockedCallerCommand"},"gupshup-integration-template-body":{"title":"GupshupIntegrationTemplateBody","description":"Body of the Gupshup template.","type":"string","minLength":1,"example":"You have received a new update about {{1}}."},"call-recording-analytics-results":{"title":"CallRecordingAnalyticsResults","type":"object","properties":{"usage":{"$ref":"#\/components\/schemas\/call-recording-analytics-results-usage"},"follow_up_email_template":{"allOf":[{"description":"The follow-up email template generated by the AI engine in the specified `language_code`. The object will be `null` if the follow-up email was not generated.","type":"object"},{"$ref":"#\/components\/schemas\/call-recording-analytics-job-results-follow-up-email-template"}]},"summarization":{"$ref":"#\/components\/schemas\/call-recording-analytics-results-summarization"},"sentiment_analysis_insights":{"allOf":[{"description":"The insights from the sentiment analysis performed on the call. This object will be `null` if sentiment analysis was not performed.","type":"object"},{"$ref":"#\/components\/schemas\/call-recording-analytics-job-results-sentiment-analysis-insights"}]},"transcription_download_url":{"allOf":[{"description":"This object provides information needed to download the transcription result as a JSON file.  The object will be `null` if no transcription was generated.","type":"object"},{"$ref":"#\/components\/schemas\/call-recording-analytics-job-results-transcription-download-url"}]}}},"call-queue-common":{"title":"CallQueueCommon","type":"object","required":["display_name","extension","max_capacity","max_wait_time_seconds","ring_strategy"],"properties":{"display_name":{"type":"string","minLength":1,"maxLength":100,"example":"Sales Queue"},"max_capacity":{"description":"Maximum number of agents.","minimum":1,"type":"integer","maximum":250},"extension":{"$ref":"#\/components\/schemas\/phone-extension"},"max_wait_time_seconds":{"description":"Maximum waiting time in queue.","minimum":1,"type":"integer","maximum":1800},"ring_strategy":{"$ref":"#\/components\/schemas\/call-queue-ring-strategy"}}},"message-delivery-acknowledgment-type-delivered":{"title":"MessageDeliveryAcknowledgmentTypeDelivered","type":"object","properties":{"type":{"$ref":"#\/components\/schemas\/message-delivery-acknowledgment-type"}}},"call-recording-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique call recording identifier.","title":"CallRecordingId"},"messaging-enabled-phone-number-assignment":{"title":"MessagingEnabledPhoneNumberAssignment","description":"Messagin enabled phone number assignment.","type":"object","required":["id","phone_number","assignment_status"],"properties":{"assignee":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-assignment-assignee"},"phone_number":{"$ref":"#\/components\/schemas\/e164-phone-number-with-plus"},"assignment_status":{"$ref":"#\/components\/schemas\/phone-number-assignment-status"},"id":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-assignment-id"}}},"channel-message-activity-item-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"enum":["channel_message_activity_item"],"type":"string"}}},{"$ref":"#\/components\/schemas\/activity-item-id-reference"}],"example":{"type":"channel_message_activity_item","id":"channel-42-latest"},"title":"ChannelMessageActivityItemTypedReference"},"call-queue-id-reference":{"title":"CallQueueIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/call-queue-id"}}},"virtual-agent-create-maximum-agents-limit-reached-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["maximum_agents_limit_reached_error"],"type":"string","nullable":false}}}],"example":{"type":"maximum_agents_limit_reached_error","status_code":409,"message":"The Agent cannot be created because the maximum number of agents was reached.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"VirtualAgentCreateMaximumAgentsLimitReachedError"},"message-sent-event":{"allOf":[{"required":["messenger_info","user","event"],"type":"object","properties":{"event":{"enum":["message_sent"],"type":"string"},"user":{"$ref":"#\/components\/schemas\/webhook-target-user"},"messenger_info":{"$ref":"#\/components\/schemas\/webhook-message-2"}}},{"$ref":"#\/components\/schemas\/webhook-event"}],"title":"MessageSentEvent"},"message-delivery-acknowledgment-type-failed":{"title":"MessageDeliveryAcknowledgmentTypeFailed","type":"object","properties":{"reason":{"$ref":"#\/components\/schemas\/message-delivery-acknowledgment-failure-reason"},"type":{"$ref":"#\/components\/schemas\/message-delivery-acknowledgment-type"}}},"call-queue-id-typed-reference":{"allOf":[{"type":"object","required":["type"],"nullable":false,"properties":{"type":{"enum":["call_queue"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-queue-id-reference"}],"title":"CallQueueIdTypedReference"},"voicemail-missed-reason":{"title":"VoicemailMissedReason","type":"string","x-n2p-enum":{"values":[{"name":"Caller Hungup","description":"The caller hungup the call before recording the voice mail (before the beep sound).","value":"caller_hungup"},{"name":"VM Disabled","description":"The voice mail feature has been disabled for the user.","value":"vm_disabled"},{"name":"Mailbox Full","description":"The user's mail box is full.","value":"mailbox_full"},{"name":"Transcode Error","description":"There is a transcoding error occured in the platform.","value":"transcode_error"},{"name":"Copy Error","description":"Platform error.","value":"copy_error"}],"name":"VoicemailMissedReason","modelAsString":false},"enum":["caller_hungup","vm_disabled","mailbox_full","transcode_error","copy_error"]},"virtual-agent-create-error":{"title":"VirtualAgentCreateError","discriminator":{"propertyName":"type","mapping":{"maximum_agents_limit_reached_error":"#\/components\/schemas\/virtual-agent-create-maximum-agents-limit-reached-error"}},"type":"object","required":["type"],"oneOf":[{"$ref":"#\/components\/schemas\/virtual-agent-create-maximum-agents-limit-reached-error"}],"properties":{"type":{"type":"string"}}},"blocked-caller-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"The unique id of the `Blocked Caller` resource.","title":"BlockedCallerId"},"call-queue-priority":{"title":"CallQueuePriority","description":"Priority of the call queue. When two (or more) calls are sent to the same agent at the same time, the higher priority queue (has lower priority value) will be prioritized over the lower priority queue (has higher priority value).","type":"integer","minimum":10},"chat-message-flag":{"title":"ChatMessageFlag","enum":["read","mentioned","wildcard_mentioned"],"type":"string"},"huddle-conference-invitation-message-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the huddle conference invitation message.","title":"HuddleConferenceInvitationMessageId"},"phone-number-reference-deprecated":{"title":"PhoneNumberReferenceDeprecated","type":"object","required":["id","phone_number"],"properties":{"phone_number":{"$ref":"#\/components\/schemas\/phone-number-id-2"},"id":{"$ref":"#\/components\/schemas\/phone-number-id-2"}}},"update-mcp-server-command":{"title":"UpdateMcpServerCommand","type":"object","required":["display_name","server_url"],"properties":{"display_name":{"$ref":"#\/components\/schemas\/mcp-server-display-name"},"headers":{"$ref":"#\/components\/schemas\/mcp-server-headers"},"tool_filter":{"$ref":"#\/components\/schemas\/mcp-server-tool-filter"},"server_url":{"$ref":"#\/components\/schemas\/mcp-server-server-url"}}},"whatsapp-session-media-message":{"allOf":[{"$ref":"#\/components\/schemas\/whatsapp-session-media-message-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-common"},{"required":["content","content_type","attachments","status"],"type":"object","properties":{"attachments":{"items":{"$ref":"#\/components\/schemas\/chat-message-attachment-reference"},"type":"array","minItems":1,"maxItems":1},"content":{"type":"string"},"content_type":{"example":"text\/x-markdown","type":"string"},"delivery_acknowledgment":{"$ref":"#\/components\/schemas\/message-delivery-acknowledgment"},"status":{"$ref":"#\/components\/schemas\/message-common-status"}}}],"title":"WhatsappSessionMediaMessage"},"role-id-deprecated":{"title":"RoleIdDeprecated","description":"The unique identifier of the role.","type":"string","example":"admin"},"blocked-caller":{"allOf":[{"$ref":"#\/components\/schemas\/create-blocked-caller-command"},{"$ref":"#\/components\/schemas\/timestamp-audit-fields"},{"$ref":"#\/components\/schemas\/user-audit-fields-optional-deprecated"},{"type":"object","required":["id"],"nullable":false,"properties":{"id":{"$ref":"#\/components\/schemas\/blocked-caller-id"}}}],"title":"BlockedCaller"},"phone-number-bound-conversation-dialog-status":{"title":"PhoneNumberBoundConversationDialogStatus","description":"Current state of dialog.","type":"string","x-n2p-enum":{"values":[{"description":"The user was assigned to the entire dialog, including the original message and all subsequent replies\n","name":"Assigned","value":"assigned"},{"description":"The user assigned to the dialog has successfully resolved the conversation\n","name":"Resolved","value":"resolved"},{"description":"A transfer of the dialog to another department or user is in progress, pending the recipient's acceptance,\ndecline, cancellation, or expiry. This is a transient state. Once resolved, the dialog moves to `assigned`\nif accepted, or reverts to its previous status if the transfer is declined, cancelled, or expires.\n","name":"Transferring","value":"transferring"},{"description":"The dialog is not assigned to anyone\n","name":"Unassigned","value":"unassigned"}],"name":"PhoneNumberBoundConversationDialogStatus","modelAsString":false},"enum":["assigned","resolved","transferring","unassigned"]},"add-mcp-server-to-virtual-agent-command":{"title":"AddMcpServerToVirtualAgentCommand","type":"object","required":["mcp_server_id"],"properties":{"mcp_server_id":{"$ref":"#\/components\/schemas\/mcp-server-id"}}},"phone-number-bound-conversation-create-item-mms-command":{"title":"PhoneNumberBoundConversationCreateItemMmsCommand","type":"object","required":["type","attachments"],"properties":{"attachments":{"items":{"$ref":"#\/components\/schemas\/chat-message-attachment-id-reference"},"type":"array"},"type":{"enum":["mms"],"type":"string"},"content":{"description":"Text content of the sent message.","type":"string"}}},"pbx-directory-configuration-error":{"title":"PbxDirectoryConfigurationError","discriminator":{"propertyName":"type","mapping":{"no_pbx_account_found":"#\/components\/schemas\/no-pbx-account-found-error"}},"type":"object","required":["type"],"oneOf":[{"$ref":"#\/components\/schemas\/no-pbx-account-found-error"}],"properties":{"type":{"type":"string"}}},"user-reference-optional-deprecated":{"title":"UserReferenceOptionalDeprecated","type":"object","required":["id"],"properties":{"first_name":{"example":"John","type":"string"},"role":{"$ref":"#\/components\/schemas\/role-optional-deprecated"},"last_name":{"example":"Doe","type":"string"},"email":{"example":"john.doe@example.com","type":"string","format":"email"},"avatar":{"$ref":"#\/components\/schemas\/avatar"},"id":{"$ref":"#\/components\/schemas\/string-id"}},"nullable":true},"add-tool-to-virtual-agent-command":{"title":"AddToolToVirtualAgentCommand","type":"object","required":["tool_id"],"properties":{"tool_id":{"$ref":"#\/components\/schemas\/tool-id"}}},"external-phone-number-typed-reference":{"allOf":[{"$ref":"#\/components\/schemas\/external-phone-number-id-typed-reference"},{"required":["phone_number_e164_canonical_form"],"type":"object","properties":{"phone_number_e164_canonical_form":{"$ref":"#\/components\/schemas\/e164-phone-number-with-plus"}}}],"type":"object","nullable":false,"title":"ExternalPhoneNumberTypedReference"},"conversation-ended-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["conversation_ended"],"type":"string","nullable":false}}}],"example":{"type":"conversation_ended","status_code":409,"message":"The conversation has ended.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"ConversationEndedError"},"call-webhook-event-audio-fields":{"title":"CallWebhookEventAudioFields","type":"object","required":["audio_message_id","audio_message_url"],"properties":{"audio_message_id":{"description":"The ID of the audio message for a call recording or voicemail. In other words, this is mapped to * The `call_recording_id` of a `Call Recording` resource if the audio file is referenced by the event related to call recordings. * The `voicemail_id` of a `Voicemail` resource if the audio file is referenced by the event related to voicemails.","type":"integer","format":"int64"},"audio_message_url":{"description":"Url to download the audio file of a call recording or voicemail. The URL needs authentication like any other API resource.","type":"string","format":"uri"}}},"user-audit-fields-deprecated":{"title":"UserAuditFieldsDeprecated","type":"object","required":["created_by"],"properties":{"created_by":{"allOf":[{"$ref":"#\/components\/schemas\/user-reference-optional-deprecated"}],"nullable":false},"updated_by":{"$ref":"#\/components\/schemas\/user-reference-optional-deprecated"}}},"bad-request-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["bad_request_error"],"type":"string","nullable":false}}}],"example":{"type":"bad_request_error","status_code":400,"message":"Failed to parse JSON content from the request body.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"BadRequestError"},"chat-message-actor":{"title":"ChatMessageActor","discriminator":{"propertyName":"type","mapping":{"system":"#\/components\/schemas\/system-actor","external_phone_number":"#\/components\/schemas\/external-phone-number-typed-reference","user":"#\/components\/schemas\/user-actor"}},"type":"object","oneOf":[{"$ref":"#\/components\/schemas\/system-actor"},{"$ref":"#\/components\/schemas\/user-actor"},{"$ref":"#\/components\/schemas\/external-phone-number-typed-reference"}],"nullable":false},"voice-conversation-template-id-reference":{"title":"VoiceConversationTemplateIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/voice-conversation-template-id"}}},"cursor-page-of-blocked-caller":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-page"},{"required":["items"],"type":"object","properties":{"items":{"items":{"$ref":"#\/components\/schemas\/blocked-caller"},"type":"array"}}}],"title":"CursorPageOfBlockedCaller"},"call-queue":{"allOf":[{"$ref":"#\/components\/schemas\/call-queue-id-reference"},{"$ref":"#\/components\/schemas\/call-queue-common"},{"required":["agents_count","priority"],"type":"object","properties":{"phone_numbers":{"items":{"$ref":"#\/components\/schemas\/phone-number-reference-deprecated"},"type":"array"},"agents_count":{"type":"integer"},"priority":{"$ref":"#\/components\/schemas\/call-queue-priority"}}},{"$ref":"#\/components\/schemas\/timestamp-audit-fields"},{"$ref":"#\/components\/schemas\/user-audit-fields-deprecated"}],"title":"CallQueue"},"voicemail-notify-event":{"allOf":[{"required":["user","event"],"type":"object","properties":{"voicemail":{"type":"boolean"},"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user who reached the voicemail service."},"event":{"enum":["voicemail_notify"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"VoicemailNotifyEvent"},"call-queue-typed-reference-optional":{"allOf":[{"type":"object","required":["type"],"nullable":true,"properties":{"type":{"enum":["call_queue"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-queue-reference-optional"}],"title":"CallQueueTypedReferenceOptional"},"gupshup-integration-template-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique ID of the Gupshup template.","title":"GupshupIntegrationTemplateId"},"chat-message-route-issue":{"title":"ChatMessageRouteIssue","description":"The key representing the reason for the issue, which can be used for localized comment.","type":"string","x-n2p-enum":{"values":[{"name":"TargetGroupUndefined","description":"Indicates that the entity does not have a defined target group\n","value":"target_group_undefined"}],"name":"ChatMessageRouteIssue","modelAsString":false},"enum":["target_group_undefined"]},"voice-conversation-template-reference":{"allOf":[{"$ref":"#\/components\/schemas\/voice-conversation-template-id-reference"},{"required":["display_name"],"type":"object","properties":{"display_name":{"$ref":"#\/components\/schemas\/voice-conversation-template-display-name"},"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"},"created_by":{"$ref":"#\/components\/schemas\/audit-actor"},"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"updated_by":{"$ref":"#\/components\/schemas\/audit-actor"}}}],"title":"VoiceConversationTemplateReference"},"call-recording-failed-event":{"allOf":[{"required":["user","event"],"type":"object","properties":{"reason":{"description":"The reason for recording failure. The most common reason is `maxCallRecordings` (Maximum recordings has been hit).","type":"string"},"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user whose call has failed to record."},"event":{"enum":["call_recording_failed"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallRecordingFailedEvent"},"avatar":{"title":"Avatar","description":"Avatar object of the user.","type":"object","properties":{"avatar_images":{"items":{"$ref":"#\/components\/schemas\/avatar-image"},"type":"array"},"user_id":{"$ref":"#\/components\/schemas\/string-id"}},"nullable":true},"tool-execution-mode":{"title":"ToolExecutionMode","description":"Tool execution mode, must be one of [\"service\", \"client\"]. `service`: the platform executes the tool's `request`. `client`: the agent pauses and the client executes the tool and posts the result to the tool-results endpoint. The `response` configuration is applied in both modes.","type":"string","enum":["service","client"],"nullable":false},"avatar-image-kind":{"title":"AvatarImageKind","description":"Describes if the avatar image is original uploaded or resized.","type":"string","enum":["original","resized"]},"end-conversation-error":{"title":"EndConversationError","discriminator":{"propertyName":"type","mapping":{"conversation_transport_not_supported":"#\/components\/schemas\/conversation-transport-not-supported-error"}},"type":"object","required":["type"],"oneOf":[{"$ref":"#\/components\/schemas\/conversation-transport-not-supported-error"}],"properties":{"type":{"type":"string"}}},"chat-message-route-fallback-admins":{"title":"ChatMessageRouteFallbackAdmins","type":"object","required":["type","id"],"properties":{"type":{"enum":["admins"],"type":"string"},"id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"example":"admins","description":"Unique identifier. Always set to 'admins'. Added for unification."}}},"voice-conversation-template-end-of-speech-silence-mode":{"title":"VoiceConversationTemplateEndOfSpeechSilenceMode","type":"string","enum":["auto","manual"],"default":"auto"},"download-link":{"title":"DownloadLink","type":"object","required":["url","expires_at_time"],"properties":{"expires_at_time":{"description":"A timestamp in [ISO 8601](https:\/\/en.wikipedia.org\/wiki\/ISO_8601) format when link will expire.","type":"string","format":"date-time"},"url":{"example":"https:\/\/mediastorage.n2p.io\/unitevmail\/1\/1\/1\/a\/vmmsg_us100000_10000000_g711.wav?token=abc123","type":"string","minLength":1}}},"tool-inputs":{"title":"ToolInputs","type":"object","additionalProperties":{"$ref":"#\/components\/schemas\/tool-json-schema"}},"voice-conversation-template-end-of-speech-silence":{"title":"VoiceConversationTemplateEndOfSpeechSilence","description":"On voice calls, how long the agent waits in silence before assuming the caller has finished speaking. Auto lets AI decide based on the caller's pacing; Manual uses a fixed duration between 1200 and 5000 milliseconds.","type":"object","properties":{"milliseconds":{"description":"The fixed silence duration in milliseconds. Only applicable when mode is manual.","maximum":5000,"multipleOf":100,"type":"integer","nullable":true,"minimum":1200},"mode":{"$ref":"#\/components\/schemas\/voice-conversation-template-end-of-speech-silence-mode"}}},"templated-string":{"title":"TemplatedString","type":"object","required":["value"],"example":[{"parser":"jq","value":".data.items | length"}],"properties":{"parser":{"description":"When value is `jq` then that `value` field must be a valid `jq` expression.","type":"string","enum":["none","jq"],"default":"none"},"value":{"description":"The string that can optional be run through one of the supported parsers.","type":"string","minLength":1}}},"role":{"allOf":[{"$ref":"#\/components\/schemas\/role-optional"},{"type":"object","nullable":false}],"title":"Role"},"call-recording-analytics-results-usage":{"title":"CallRecordingAnalyticsResultsUsage","type":"object","required":["call_duration_seconds"],"properties":{"call_duration_seconds":{"description":"Total duration of the call in seconds.","type":"integer","example":30,"nullable":true,"format":"int32"}},"nullable":true},"knowledge-base-assignment":{"title":"KnowledgeBaseAssignment","type":"object","required":["id","assigned_at_time"],"properties":{"assigned_at_time":{"description":"The timestamp when the Knowledge Base was assigned to the Virtual Agent.","type":"string","nullable":true,"format":"date-time"},"id":{"$ref":"#\/components\/schemas\/knowledge-base-id"}}},"tts-voice":{"title":"TtsVoice","type":"object","properties":{"display_name":{"type":"string"},"is_selectable":{"type":"boolean"},"is_enhanced":{"description":"Indicates the voice was engineered for maximum clarity and professional-grade consistency. Deprecated: use tier and series to identify the voice generation instead.","type":"boolean","deprecated":true},"language_code":{"type":"string"},"tier":{"$ref":"#\/components\/schemas\/tier"},"series":{"description":"Voice generation within the tier; higher values are newer generations.","type":"integer","minimum":1},"id":{"$ref":"#\/components\/schemas\/tts-voice-id"},"gender":{"$ref":"#\/components\/schemas\/tts-voice-gender"}}},"chat-message-route-call-queue":{"allOf":[{"$ref":"#\/components\/schemas\/call-queue-typed-reference-optional"},{"$ref":"#\/components\/schemas\/chat-message-route-common"}],"title":"ChatMessageRouteCallQueue"},"jq-templated-string":{"title":"JqTemplatedString","type":"object","required":["value"],"example":[{"parser":"jq","value":".data.items | length"}],"properties":{"parser":{"enum":["jq"],"type":"string","description":"When value is `jq` then that `value` field must be a valid `jq` expression."},"value":{"description":"The string that can optional be run through one of the supported parsers.","type":"string","minLength":1}}},"language-code":{"title":"LanguageCode","description":"The BCP 47 language code that the AI generated assets will be translated to.","type":"string","default":"en"},"tool-request":{"title":"ToolRequest","type":"object","required":["url","method"],"properties":{"body":{"allOf":[{"$ref":"#\/components\/schemas\/jq-templated-string"},{"properties":{"value":{"maxLength":1024}}}],"nullable":true},"headers":{"type":"object","additionalProperties":{"items":{"allOf":[{"$ref":"#\/components\/schemas\/templated-string"},{"properties":{"value":{"maxLength":1024}}}]},"type":"array"}},"method":{"enum":["get","head","post","put","delete","connect","options","trace","patch"],"type":"string"},"url":{"allOf":[{"$ref":"#\/components\/schemas\/templated-string"},{"properties":{"value":{"maxLength":2000}}}]}}},"chat-message-route-company-id-typed-reference":{"allOf":[{"required":["type","id"],"type":"object","properties":{"type":{"enum":["company"],"type":"string"},"id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"example":"company","description":"Unique identifier. Always set to 'company'. Added for unification."}}}],"title":"ChatMessageRouteCompanyIdTypedReference"},"call-recording-analytics-results-summarization":{"title":"CallRecordingAnalyticsResultsSummarization","description":"The summarization generated by the AI engine in the specified `language_code`. The object will be `null` if the summarization cannot be generated.","type":"object","required":["language_code","content"],"nullable":true,"properties":{"language_code":{"$ref":"#\/components\/schemas\/language-code"},"content":{"type":"string"}}},"mcp-server-create-maximum-mcp-servers-limit-reached-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["maximum_mcp_servers_limit_reached_error"],"type":"string","nullable":false}}}],"example":{"type":"maximum_mcp_servers_limit_reached_error","status_code":409,"message":"The MCP Server cannot be created because the maximum number of MCP Servers was reached.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"McpServerCreateMaximumMcpServersLimitReachedError"},"call-recording-analytics":{"title":"CallRecordingAnalytics","type":"object","required":["status","created_at_time","results"],"properties":{"results":{"$ref":"#\/components\/schemas\/call-recording-analytics-results"},"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"},"status":{"$ref":"#\/components\/schemas\/call-recording-analytics-status"}}},"tool-response":{"title":"ToolResponse","type":"object","properties":{"context":{"allOf":[{"$ref":"#\/components\/schemas\/jq-templated-string"},{"properties":{"parser":{"enum":["jq"]},"value":{"maxLength":1024}}}],"nullable":true},"transform":{"allOf":[{"$ref":"#\/components\/schemas\/jq-templated-string"},{"properties":{"parser":{"enum":["jq"]},"value":{"maxLength":1536}}}],"nullable":true},"system_message":{"allOf":[{"$ref":"#\/components\/schemas\/templated-string"},{"properties":{"value":{"maxLength":1536}}}],"nullable":true}}},"gupshup-integration-template-label":{"title":"GupshupIntegrationTemplateLabel","description":"Use-case for this template.","type":"string","minLength":1,"example":"Account update"},"call-recording-analytics-job-results-follow-up-email-template":{"title":"CallRecordingAnalyticsJobResultsFollowUpEmailTemplate","description":"The follow-up email template that was generated by the AI engine. Please note that this is only populated if the `follow_up_email_template` task was enabled when creating the job.","type":"object","nullable":true,"properties":{"body":{"type":"string"},"language_code":{"$ref":"#\/components\/schemas\/language-code"}}},"voice-transfer-scenarios":{"title":"VoiceTransferScenarios","description":"The set of scenarios that will trigger a voice transfer.","type":"array","maxItems":20,"items":{"$ref":"#\/components\/schemas\/voice-transfer-scenario"}},"phone-number-bound-conversation-dialog-type":{"title":"PhoneNumberBoundConversationDialogType","description":"Types of dialog depending on the access area.","type":"string","x-n2p-enum":{"values":[{"description":"Indicates that only one specific person has access to the dialog.\ni.e. phone number assigned directly to Team Member\n","name":"Personal","value":"personal"},{"description":"Indicates that the dialog is available\/visible to team members.\ni.e. phone number assigned to Department, Ring Group, Call Queue, Welcome Menu, etc.\n","name":"Shared","value":"shared"}],"name":"PhoneNumberBoundConversationDialogType","modelAsString":false},"enum":["personal","shared"]},"ring-group-typed-reference-optional":{"allOf":[{"type":"object","required":["type"],"nullable":true,"properties":{"type":{"enum":["ring_group"],"type":"string"}}},{"$ref":"#\/components\/schemas\/ring-group-reference-optional"}],"title":"RingGroupTypedReferenceOptional"},"voice-language":{"title":"VoiceLanguage","type":"object","required":["language_code"],"properties":{"language_code":{"$ref":"#\/components\/schemas\/voice-language-code"}}},"messaging-enabled-phone-number-assignment-assignee-reference":{"title":"MessagingEnabledPhoneNumberAssignmentAssigneeReference","discriminator":{"propertyName":"type","mapping":{"department":"#\/components\/schemas\/department-id-typed-reference","user":"#\/components\/schemas\/user-id-typed-reference","company":"#\/components\/schemas\/messaging-enabled-phone-number-assignment-assignee-company-id-typed-reference"}},"oneOf":[{"$ref":"#\/components\/schemas\/user-id-typed-reference"},{"$ref":"#\/components\/schemas\/department-id-typed-reference"},{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-assignment-assignee-company-id-typed-reference"}]},"port":{"allOf":[{"$ref":"#\/components\/schemas\/port-optional"},{"nullable":false}],"title":"Port"},"ai-agent-conversation-ended-event":{"allOf":[{"$ref":"#\/components\/schemas\/ai-agent-conversation-identity"},{"required":["event","transcript_url","recording_url","post_conversation_tasks","billing_tiers","ai_model_tiers","total_credits","user_message_count","last_activity_time","call_started_at_time","call_ended_at_time","call_duration_seconds","voices"],"type":"object","properties":{"call_started_at_time":{"description":"Date and time when the call started. Only populated for voice conversations.","type":"string","example":"2026-05-06T12:00:00Z","nullable":true,"format":"date-time"},"transcript_url":{"allOf":[{"$ref":"#\/components\/schemas\/download-link"}],"description":"This object provides information needed to download the conversation transcript as a JSON file. The download link is temporary; check `expires_at_time` for its expiration."},"call_ended_at_time":{"description":"Date and time when the call ended. Only populated for voice conversations.","type":"string","example":"2026-05-06T12:05:30Z","nullable":true,"format":"date-time"},"recording_url":{"allOf":[{"$ref":"#\/components\/schemas\/download-link"}],"description":"This object provides information needed to download the call recording. The download link is temporary; check `expires_at_time` for its expiration. The object will be `null` if no recording is available.","type":"object","nullable":true},"voices":{"description":"List of voice configurations used during the conversation. Only populated for voice conversations.","type":"array","nullable":true,"items":{"required":["name","tier","language"],"type":"object","properties":{"name":{"description":"Name of the voice.","type":"string","example":"Rachel"},"language":{"description":"Language code of the voice.","type":"string","example":"en-US"},"tier":{"description":"Tier of the voice.","type":"string","example":"standard"}}}},"billing_tiers":{"items":{"type":"string"},"type":"array","example":["premium"],"description":"The billing tiers used for this conversation."},"ai_model_tiers":{"items":{"type":"string"},"type":"array","example":["premium"],"description":"The AI model tiers used for this conversation."},"event":{"enum":["ai_agent_conversation_ended"],"type":"string"},"total_credits":{"description":"Total credits consumed by this conversation.","type":"integer","example":10,"format":"int32"},"post_conversation_tasks":{"description":"Lifecycle status of the asynchronous tasks that run after a conversation ends, keyed by task name, as of the moment this event was published.","type":"object","required":["summary"],"properties":{"summary":{"required":["status","finished_at_time"],"type":"object","properties":{"finished_at_time":{"description":"When the task reached its end state (`completed`, `failed`, or `skipped`). `null` while `pending`.","type":"string","example":"2026-05-06T12:05:35Z","nullable":true,"format":"date-time"},"status":{"description":"Status of the summary generation task. `completed` — the summary was generated and the `summary` object is populated. `failed` — generation was attempted and permanently failed; `summary` is `null`. `skipped` — no summary will ever be generated for this conversation (for example, it ended without any user message); `summary` is `null`. `pending` — this event was force-published before the summary settled; subscribe to `ai_agent_conversation_summary_finished` or poll `GET \/conversations\/{conversation_id}` for the follow-up.","type":"string","enum":["completed","failed","skipped","pending"]}}}}},"call_duration_seconds":{"description":"Total duration of the call in seconds. Only populated for voice conversations.","type":"integer","example":330,"nullable":true,"format":"int32"},"user_message_count":{"description":"Number of messages sent by the user during the conversation.","type":"integer","example":5,"format":"int32"},"last_activity_time":{"description":"Date and time of the last activity in the conversation.","type":"string","example":"2026-05-06T12:05:00Z","format":"date-time"}}},{"$ref":"#\/components\/schemas\/webhook-event"}],"title":"AiAgentConversationEndedEvent"},"special-extension-typed-reference-optional":{"allOf":[{"type":"object","required":["type"],"nullable":true,"properties":{"type":{"enum":["special_extension"],"type":"string"}}},{"$ref":"#\/components\/schemas\/special-extension-reference-optional"}],"title":"SpecialExtensionTypedReferenceOptional"},"call-recording-analytics-results-event":{"allOf":[{"required":["user","event","call_recording_id","call_start_time","call_recording_analytics","duration_seconds"],"type":"object","properties":{"call_recording_analytics":{"$ref":"#\/components\/schemas\/call-recording-analytics"},"duration_seconds":{"description":"Total duration of the recording in seconds.","type":"integer","example":30,"format":"int32"},"call_recording_id":{"description":"The ID of the call recording on which the analysis performed.","type":"integer","format":"int32"},"call_start_time":{"description":"Date and time when the call was started.","type":"string","format":"date-time"},"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user whose recording was analyzed."},"event":{"enum":["call_recording_analytics_results"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event-generic"}],"title":"CallRecordingAnalyticsResultsEvent"},"sort-direction":{"title":"SortDirection","type":"string","x-n2p-enum":{"values":[{"name":"Ascending","description":"Increasing order.\n","value":"asc"},{"name":"Descending","description":"Decreasing order.\n","value":"desc"}],"name":"SortDirection","modelAsString":false},"enum":["asc","desc"]},"call-recording-analytics-job-results-sentiment-analysis-insights-overall":{"title":"CallRecordingAnalyticsJobResultsSentimentAnalysisInsightsOverall","type":"object","properties":{"reason":{"$ref":"#\/components\/schemas\/call-recording-analytics-job-results-sentiment-analysis-insights-overall-reason"},"label":{"$ref":"#\/components\/schemas\/sentiment-label"}}},"messaging-assignment":{"title":"MessagingAssignment","type":"object","required":["virtual_agent_id","assigned_at_time"],"properties":{"virtual_agent_id":{"$ref":"#\/components\/schemas\/virtual-agent-id"},"assigned_at_time":{"$ref":"#\/components\/schemas\/assigned-at-time"}}},"chat-message-route-unassigned-id-typed-reference":{"allOf":[{"type":"object","required":["type","id"],"nullable":false,"properties":{"type":{"enum":["unassigned"],"type":"string"},"id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"example":"unassigned","description":"Unique identifier. Always set to 'unassigned'. Added for unification."}}}],"title":"ChatMessageRouteUnassignedIdTypedReference"},"phone-number":{"allOf":[{"$ref":"#\/components\/schemas\/phone-number-reference"},{"type":"object","properties":{"messaging_assignment":{"$ref":"#\/components\/schemas\/messaging-assignment"},"voice_conversation_template_assignment":{"$ref":"#\/components\/schemas\/voice-conversation-template-assignment"}}}],"title":"PhoneNumber"},"call-recording-analytics-job-results-sentiment-analysis-insights-participant-segment":{"title":"CallRecordingAnalyticsJobResultsSentimentAnalysisInsightsParticipantSegment","type":"object","properties":{"label":{"$ref":"#\/components\/schemas\/sentiment-label"}}},"voice-conversation-template-background-audio":{"title":"VoiceConversationTemplateBackgroundAudio","type":"object","properties":{"source":{"$ref":"#\/components\/schemas\/background-audio-source"},"mode":{"$ref":"#\/components\/schemas\/background-audio-mode"}}},"call-recording-analytics-job-results-sentiment-analysis-insights-participant":{"title":"CallRecordingAnalyticsJobResultsSentimentAnalysisInsightsParticipant","description":"The insights for the sentiment analysis performed for the participant on the call.","type":"object","properties":{"ending":{"allOf":[{"$ref":"#\/components\/schemas\/call-recording-analytics-job-results-sentiment-analysis-insights-participant-segment"},{"description":"The insights for sentiment analysis performed for the participant on the ending of the call.","type":"object"}]},"participant":{"description":"The participant that was used for the sentiment analysis insights.","type":"string","example":"Joe"},"overall":{"allOf":[{"$ref":"#\/components\/schemas\/call-recording-analytics-job-results-sentiment-analysis-insights-overall"},{"description":"The insights for sentiment analysis performed for the participant on the entire call.","type":"object"}]},"beginning":{"allOf":[{"$ref":"#\/components\/schemas\/call-recording-analytics-job-results-sentiment-analysis-insights-participant-segment"},{"description":"The insights for sentiment analysis performed for the participant on the beginning of the call.","type":"object"}]}}},"gupshup-integration-template-common":{"title":"GupshupIntegrationTemplateCommon","type":"object","required":["id","gupshup_integration_id","display_name","category","language","label","status","synced_at_time"],"properties":{"display_name":{"$ref":"#\/components\/schemas\/gupshup-integration-template-display-name"},"category":{"$ref":"#\/components\/schemas\/gupshup-integration-template-category"},"synced_at_time":{"description":"The date-time at which the gupshup template was synced.","type":"string","format":"date-time"},"status":{"$ref":"#\/components\/schemas\/gupshup-integration-template-status"},"language":{"$ref":"#\/components\/schemas\/gupshup-integration-template-language"},"label":{"$ref":"#\/components\/schemas\/gupshup-integration-template-label"},"gupshup_integration_id":{"$ref":"#\/components\/schemas\/gupshup-integration-app-id"},"id":{"$ref":"#\/components\/schemas\/gupshup-integration-template-id"}}},"chat-message-route-user":{"allOf":[{"$ref":"#\/components\/schemas\/user-typed-reference-optional"},{"$ref":"#\/components\/schemas\/chat-message-route-common"}],"title":"ChatMessageRouteUser"},"voice-conversation-template-inactivity-reprompt":{"title":"VoiceConversationTemplateInactivityReprompt","description":"When present, the Virtual Agent speaks a short, contextual prompt to re-engage a silent caller, repeating up to `max_attempts` times before giving up. Omit or send `null` to skip re-prompting and act on the silence immediately.","type":"object","required":["interval_seconds","max_attempts"],"nullable":true,"properties":{"max_attempts":{"description":"How many times the Virtual Agent re-prompts the caller before giving up.","minimum":1,"type":"integer","maximum":10},"interval_seconds":{"description":"Seconds of caller silence after a re-prompt's speech finishes before the next re-prompt.","minimum":10,"type":"integer","maximum":600}}},"sort-fields":{"title":"SortFields","type":"object","properties":{"sort":{"items":{"$ref":"#\/components\/schemas\/sort"},"type":"array","uniqueItems":true,"nullable":true}}},"welcome-menu-reference":{"allOf":[{"$ref":"#\/components\/schemas\/welcome-menu-reference-optional"},{"type":"object","nullable":false}],"title":"WelcomeMenuReference"},"message-received-event":{"allOf":[{"required":["messenger_info","user","event"],"type":"object","properties":{"event":{"enum":["message_received"],"type":"string"},"user":{"description":"The entity which is relevant to this webhook event.","oneOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"},{"$ref":"#\/components\/schemas\/webhook-target-department"},{"$ref":"#\/components\/schemas\/webhook-target-account"}]},"messenger_info":{"$ref":"#\/components\/schemas\/webhook-message"}}},{"$ref":"#\/components\/schemas\/webhook-event"}],"title":"MessageReceivedEvent"},"search-sip-trunk-call-detail-records-command":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-pagination-fields"},{"$ref":"#\/components\/schemas\/filter-fields"},{"$ref":"#\/components\/schemas\/sort-fields"}],"title":"SearchSipTrunkCallDetailRecordsCommand"},"call-queue-reference-optional":{"title":"CallQueueReferenceOptional","type":"object","required":["id","display_name"],"properties":{"display_name":{"type":"string","minLength":1,"maxLength":100,"example":"Sales Queue"},"id":{"$ref":"#\/components\/schemas\/call-queue-id"}},"nullable":true},"ring-group-id-typed-reference":{"allOf":[{"type":"object","required":["type"],"nullable":false,"properties":{"type":{"enum":["ring_group"],"type":"string"}}},{"$ref":"#\/components\/schemas\/ring-group-id-reference"}],"title":"RingGroupIdTypedReference"},"sip-trunk-call-detail-record-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique CDR (Call Detail Record) identifier.","example":"38a2e9ab-4e5a-4b63-a912-b96db4168929","title":"SipTrunkCallDetailRecordId"},"call-recording-reference-deprecated":{"allOf":[{"$ref":"#\/components\/schemas\/timestamp-audit-fields"},{"type":"object","required":["id","status","duration_seconds"],"nullable":true,"properties":{"id":{"$ref":"#\/components\/schemas\/call-recording-id"},"duration_seconds":{"description":"Duration of the call recording in seconds.","type":"integer","example":68,"format":"int32"},"status":{"$ref":"#\/components\/schemas\/call-recording-status"}}}],"title":"CallRecordingReferenceDeprecated"},"voice-conversation-template-inactivity-detection":{"title":"VoiceConversationTemplateInactivityDetection","description":"Opt-in detection of an unresponsive caller. Omit or send `null` to disable (the default). When set, the Virtual Agent waits `silence_timeout_seconds` for the caller and then hangs up, ending the call with the `inactivity_timeout` reason — or, if `reprompt` is present, tries to re-engage the caller first. The full sequence is required to be shorter than the maximum call length.","type":"object","required":["silence_timeout_seconds"],"nullable":true,"properties":{"silence_timeout_seconds":{"description":"Seconds of caller silence before the first inactivity action. Silence only accrues while the Virtual Agent is not speaking.","minimum":10,"type":"integer","maximum":600},"reprompt":{"$ref":"#\/components\/schemas\/voice-conversation-template-inactivity-reprompt"}}},"sip-trunk-call-result":{"title":"SipTrunkCallResult","description":"The final status of the call.","type":"string","x-n2p-enum":{"values":[{"description":"The call was answered and some conversation happened. Usually has `16` (Normal Clearing) as `reason_code`.\n","name":"Answered","value":"answered"},{"description":"The call wasn't answered. Refer to the `reason_code` for detailed information.\n","name":"Not Answered","value":"not_answered"}],"name":"SipTrunkCallResult","modelAsString":false},"enum":["answered","not_answered"]},"call-recording-analytics-job-results-sentiment-analysis-insights":{"title":"CallRecordingAnalyticsJobResultsSentimentAnalysisInsights","description":"The insights from the sentiment analysis performed for the call. Please note that this is only populated if the `sentiment_analysis_insights` task was enabled when creating the job.","type":"object","nullable":true,"properties":{"overall":{"allOf":[{"$ref":"#\/components\/schemas\/call-recording-analytics-job-results-sentiment-analysis-insights-overall"},{"description":"The inferred sentiment for all participants on the calls.","type":"object"}]},"participant_insights":{"items":{"$ref":"#\/components\/schemas\/call-recording-analytics-job-results-sentiment-analysis-insights-participant"},"type":"array"}}},"chat-message-route-virtual-fax":{"allOf":[{"$ref":"#\/components\/schemas\/virtual-fax-id-typed-reference-optional"},{"$ref":"#\/components\/schemas\/chat-message-route-common"}],"title":"ChatMessageRouteVirtualFax"},"ring-group-id-reference":{"title":"RingGroupIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/ring-group-id"}}},"client-tool-call-request":{"title":"ClientToolCallRequest","description":"Present when the agent requires the client to execute a tool call. The client should execute the tool and submit the result via the tool-results endpoint.","type":"object","properties":{"inputs":{"description":"Arbitrary key-value input parameters to pass to the tool.","type":"object","additionalProperties":true,"nullable":true},"tool":{"$ref":"#\/components\/schemas\/tool-reference"}},"nullable":true},"sip-trunk-call-reason-code":{"title":"SipTrunkCallReasonCode","description":"The ISDN (Q.850) reason code of the call (https:\/\/en.wikipedia.org\/wiki\/ISDN_User_Part#Cause_codes).","type":"integer","example":21},"gupshup-integration-template-parameter":{"title":"GupshupIntegrationTemplateParameter","type":"object","required":["parameter"],"properties":{"sample_value":{"description":"Sample value for for the Gupshup template parameter.","type":"string","minLength":1,"example":"Name"},"parameter":{"description":"Parameter for the Gupshup template.","type":"string","minLength":1,"example":"{{1}}"}}},"phone-number-bound-conversation-create-item-sms-command":{"title":"PhoneNumberBoundConversationCreateItemSmsCommand","type":"object","required":["type","content"],"properties":{"type":{"enum":["sms"],"type":"string"},"content":{"description":"Text content of the sent message.","type":"string"}}},"sip-trunk-external-phone-number-caller":{"title":"SipTrunkExternalPhoneNumberCaller","type":"object","required":["type"],"properties":{"type":{"enum":["external_phone_number"],"type":"string","description":"External PSTN (Public switched telephone network) phone number."}}},"phone-number-bound-conversation-create-item-whatsapp-session-media-command":{"title":"PhoneNumberBoundConversationCreateItemWhatsappSessionMediaCommand","type":"object","required":["type","attachments"],"properties":{"attachments":{"items":{"$ref":"#\/components\/schemas\/chat-message-attachment-id-reference"},"type":"array","minItems":1,"maxItems":1},"type":{"enum":["whatsapp_session_media"],"type":"string"},"content":{"description":"Text caption of the media.","type":"string"}}},"chat-message-route":{"title":"ChatMessageRoute","description":"An array of objects representing the sequence of entities (such as departments, ring groups, call queues, etc) through which the message was routed. Plus special types:\n 'unassigned' - for the case when the phone number is acquired but not assigned to the entity.\n 'company' - for the case when the phone number is available to all members of the company.","type":"array","items":{"discriminator":{"propertyName":"type","mapping":{"ring_group":"#\/components\/schemas\/chat-message-route-ring-group","call_queue":"#\/components\/schemas\/chat-message-route-call-queue","special_extension":"#\/components\/schemas\/chat-message-route-special-extension","virtual_fax":"#\/components\/schemas\/chat-message-route-virtual-fax","user":"#\/components\/schemas\/chat-message-route-user","welcome_menu":"#\/components\/schemas\/chat-message-route-welcome-menu","department":"#\/components\/schemas\/chat-message-route-department","unassigned":"#\/components\/schemas\/chat-message-route-unassigned","company":"#\/components\/schemas\/chat-message-route-company"}},"type":"object","anyOf":[{"$ref":"#\/components\/schemas\/chat-message-route-call-queue"},{"$ref":"#\/components\/schemas\/chat-message-route-company"},{"$ref":"#\/components\/schemas\/chat-message-route-department"},{"$ref":"#\/components\/schemas\/chat-message-route-ring-group"},{"$ref":"#\/components\/schemas\/chat-message-route-special-extension"},{"$ref":"#\/components\/schemas\/chat-message-route-unassigned"},{"$ref":"#\/components\/schemas\/chat-message-route-user"},{"$ref":"#\/components\/schemas\/chat-message-route-virtual-fax"},{"$ref":"#\/components\/schemas\/chat-message-route-welcome-menu"}],"nullable":true}},"messenger-uuid":{"pattern":"^[0-9a-f]{24}$","type":"string","minLength":24,"maxLength":24,"example":"5d35f6a3fcc16b1360b1e890","title":"MessengerUuid"},"phone-number-bound-conversation-create-item-whatsapp-session-text-command":{"title":"PhoneNumberBoundConversationCreateItemWhatsappSessionTextCommand","type":"object","required":["type","content"],"properties":{"type":{"enum":["whatsapp_session_text"],"type":"string"},"content":{"description":"Text content of the sent message.","type":"string"}}},"call-hold-reason":{"title":"CallHoldReason","type":"string","x-n2p-enum":{"values":[{"name":"Holder","description":"Tells the hold has been initiated by the caller.","value":"holder"},{"name":"Holdee","description":"Tells the hold has been initiated by the callee.","value":"holdee"}],"name":"CallHoldReason","modelAsString":false},"enum":["holder","holdee"]},"phone-number-bound-conversation-create-item-whatsapp-template-command":{"title":"PhoneNumberBoundConversationCreateItemWhatsappTemplateCommand","properties":{"template":{"required":["id"],"type":"object","properties":{"body_parameter_values":{"items":{"type":"string"},"type":"array"},"header_parameter_values":{"items":{"type":"string"},"type":"array"},"button_parameter_values":{"description":"Each array contains parameters for a single button.","items":{"description":"Parameters for a specific button, can be empty if the button has no parameters to specify.","type":"array","items":{"type":"string"}},"type":"array","example":[["btn1_param"],["btn2_param"],[],["btn4_param"]]},"id":{"$ref":"#\/components\/schemas\/gupshup-integration-template-id"}}},"type":{"enum":["whatsapp_template"],"type":"string"}},"type":"object","required":["type","template"]},"conversation-id-2":{"allOf":[{"$ref":"#\/components\/schemas\/messenger-uuid"},{"description":"Unique identifier of the conversation."}],"title":"ConversationId2"},"sip-trunk-caller":{"title":"SipTrunkCaller","type":"object","required":["type","ip_address","caller_id"],"properties":{"ip_address":{"allOf":[{"$ref":"#\/components\/schemas\/sip-trunk-call-ip-address"}],"description":"The client origin IP address (The source IP from the INVITE)."},"type":{"enum":["sip_trunk"],"type":"string"},"caller_id":{"description":"Actual Caller ID used during the call from SIP Trunk. Shows values that was sent as Caller ID in INVITE.","type":"string","example":"+12025550153"}}},"click-to-call":{"allOf":[{"$ref":"#\/components\/schemas\/create-click-to-call-command"},{"required":["id","from"],"type":"object","properties":{"from":{"allOf":[{"$ref":"#\/components\/schemas\/e164-phone-number-no-plus"}],"description":"The origination phone number in E.164 format (without leading '+')."},"id":{"$ref":"#\/components\/schemas\/click-to-call-id"}}}],"description":"A call initiated using the Click-to-Call API.","type":"object","title":"ClickToCall"},"conversation-event-id":{"allOf":[{"$ref":"#\/components\/schemas\/messenger-uuid"},{"description":"Unique identifier of the message."}],"title":"ConversationEventId"},"call-queue-statistics-agent":{"title":"CallQueueStatisticsAgent","type":"object","required":["id"],"properties":{"call_info":{"$ref":"#\/components\/schemas\/call-queue-agent-call-info"},"id":{"$ref":"#\/components\/schemas\/string-id"},"status":{"$ref":"#\/components\/schemas\/call-queue-agent-status"}}},"department-reference":{"allOf":[{"$ref":"#\/components\/schemas\/department-reference-optional"},{"type":"object","nullable":false}],"title":"DepartmentReference"},"call-resume-reason":{"title":"CallResumeReason","type":"string","x-n2p-enum":{"values":[{"name":"Resumer","description":"Tells the call has been resumed by the caller.","value":"resumer"},{"name":"Resumee","description":"Tells the call has been resumed by the callee.","value":"resumee"}],"name":"CallResumeReason","modelAsString":false},"enum":["resumer","resumee"]},"gupshup-integration-template-button-type":{"title":"GupshupIntegrationTemplateButtonType","type":"string","x-n2p-enum":{"values":[{"name":"Quick Reply","value":"quick_reply"},{"name":"URL","value":"url"},{"name":"Phone Number","value":"phone_number"},{"name":"Copy Code","value":"copy_code"},{"name":"OTP","value":"otp"}],"name":"GupshupIntegrationTemplateButton","modelAsString":false},"enum":["quick_reply","url","phone_number","copy_code","otp"]},"sip-trunk-reference-optional":{"title":"SipTrunkReferenceOptional","description":"SIP Trunk Reference.","type":"object","required":["id","display_name"],"nullable":true,"properties":{"display_name":{"example":"North-West Office Trunk","type":"string"},"id":{"example":"49123","type":"string"}}},"ai-agent-conversation-summary-finished-event":{"allOf":[{"$ref":"#\/components\/schemas\/ai-agent-conversation-identity"},{"required":["event","post_conversation_tasks"],"type":"object","properties":{"post_conversation_tasks":{"description":"Lifecycle status of the post-conversation tasks, keyed by task name. This event announces the summary task, so it carries only the `summary` entry.","type":"object","required":["summary"],"properties":{"summary":{"required":["status","finished_at_time"],"type":"object","properties":{"finished_at_time":{"description":"When the task reached its end state.","type":"string","example":"2026-09-08T12:00:20Z","format":"date-time"},"status":{"description":"End state of the summary generation task. `completed` — the summary was generated and the `summary` object is populated. `failed` — generation was attempted and permanently failed; `summary` is `null`. `skipped` — no summary will ever be generated for this conversation (for example, it ended without any user message); `summary` is `null`.","type":"string","enum":["completed","failed","skipped"]}}}}},"event":{"enum":["ai_agent_conversation_summary_finished"],"type":"string"}}},{"$ref":"#\/components\/schemas\/webhook-event"}],"title":"AiAgentConversationSummaryFinishedEvent"},"external-phone-number-id-typed-reference":{"allOf":[{"required":["id","type"],"type":"object","properties":{"type":{"enum":["external_phone_number"],"type":"string"},"id":{"$ref":"#\/components\/schemas\/string-id"}}}],"type":"object","nullable":false,"title":"ExternalPhoneNumberIdTypedReference"},"user-contact":{"allOf":[{"$ref":"#\/components\/schemas\/contact-common"},{"required":["type","user"],"type":"object","properties":{"type":{"enum":["user"],"type":"string"},"user":{"$ref":"#\/components\/schemas\/user-reference"}}}],"title":"UserContact"},"mcp-server-tool-filter":{"title":"McpServerToolFilter","description":"The filter that controls which MCP server tools are available to the Virtual Agent. If the filter is not set, all tools are available.","type":"object","required":["mode","tools"],"nullable":true,"properties":{"tools":{"items":{"type":"string"},"type":"array","minItems":1,"description":"The names of the tools to filter."},"mode":{"enum":["include","exclude"],"type":"string","description":"The mode of the tool filter."}}},"primitive-literal-value":{"title":"PrimitiveLiteralValue","oneOf":[{"$ref":"#\/components\/schemas\/string-literal-value"},{"description":"Numeric literal value.","type":"number"},{"description":"Boolean literal value.","type":"boolean"},{"nullable":true,"description":"Null literal value.","type":"object","enum":[null]},{"$ref":"#\/components\/schemas\/primitive-variable-value"}]},"call-history-owner-id-typed-reference":{"title":"CallHistoryOwnerIdTypedReference","description":"Identifies who owns the calls being requested.","type":"object","required":["id","type"],"properties":{"type":{"description":"The kind of entity that owns the calls.","type":"string","enum":["user","department","ring_group","call_queue","account"],"example":"user"},"id":{"$ref":"#\/components\/schemas\/string-id"}}},"update-webhook-subscription-command":{"title":"UpdateWebhookSubscriptionCommand","description":"The `platform` field determines which scope filter is applicable: `pbx` subscriptions support the `users` and `call_scope` scope filters; `ai_agent` subscriptions support the `virtual_agents` scope filter.","required":["platform"],"discriminator":{"propertyName":"platform","mapping":{"pbx":"#\/components\/schemas\/create-webhook-subscription-pbx-command","ai_agent":"#\/components\/schemas\/create-webhook-subscription-ai-agent-command"}},"oneOf":[{"$ref":"#\/components\/schemas\/create-webhook-subscription-pbx-command"},{"$ref":"#\/components\/schemas\/create-webhook-subscription-ai-agent-command"}],"properties":{"platform":{"$ref":"#\/components\/schemas\/webhook-platform"}}},"phone-number-bound-conversation-create-item-command":{"title":"PhoneNumberBoundConversationCreateItemCommand","discriminator":{"propertyName":"type","mapping":{"whatsapp_template":"#\/components\/schemas\/phone-number-bound-conversation-create-item-whatsapp-template-command","mms":"#\/components\/schemas\/phone-number-bound-conversation-create-item-mms-command","whatsapp_session_media":"#\/components\/schemas\/phone-number-bound-conversation-create-item-whatsapp-session-media-command","sms":"#\/components\/schemas\/phone-number-bound-conversation-create-item-sms-command","whatsapp_session_text":"#\/components\/schemas\/phone-number-bound-conversation-create-item-whatsapp-session-text-command"}},"oneOf":[{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-create-item-mms-command"},{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-create-item-sms-command"},{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-create-item-whatsapp-session-media-command"},{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-create-item-whatsapp-session-text-command"},{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-create-item-whatsapp-template-command"}]},"gupshup-integration-template-button":{"title":"GupshupIntegrationTemplateButton","type":"object","required":["type"],"properties":{"button_parameters":{"items":{"$ref":"#\/components\/schemas\/gupshup-integration-template-parameter"},"type":"array"},"type":{"$ref":"#\/components\/schemas\/gupshup-integration-template-button-type"},"text":{"type":"string","minLength":1},"phone_number":{"minLength":1},"url":{"type":"string","minLength":1}}},"call-resume-event":{"allOf":[{"required":["reason","hold_duration","user","event"],"type":"object","properties":{"hold_duration":{"description":"The number of seconds the call was on `hold` state from the last `call_hold` event.","type":"integer"},"reason":{"$ref":"#\/components\/schemas\/call-resume-reason"},"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user who resumed the call from a `hold` state."},"event":{"enum":["call_resume"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallResumeEvent"},"build-call-queue-report-command":{"allOf":[{"type":"object","properties":{"start_date":{"description":"Start date for building report.","type":"string","format":"date-time"},"interval_size":{"$ref":"#\/components\/schemas\/call-queue-report-interval-size"},"end_date":{"description":"End date for building report.","type":"string","format":"date-time"},"iana_timezone_id":{"$ref":"#\/components\/schemas\/iana-timezone-id-with-utc-default"}}}],"title":"BuildCallQueueReportCommand"},"call-rg-queue-tier-event":{"allOf":[{"required":["user","event"],"type":"object","properties":{"user":{"$ref":"#\/components\/schemas\/webhook-target-account"},"event":{"enum":["call_rg_queue_tier"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallRgQueueTierEvent"},"call-queue-report":{"title":"CallQueueReport","type":"object","properties":{"min_waiting_time":{"description":"Minimum call waiting duration (in seconds) for calls started within the interval.","type":"number"},"abandoned_calls":{"description":"Number of abandoned calls that started within the interval.","type":"number"},"average_answered_waiting_time":{"description":"Average call waiting duration (in seconds) for answered calls started within the interval.","type":"number"},"interval_start_time":{"description":"Start time of the report interval.","type":"string","format":"date-time"},"answered_calls":{"description":"Number of calls answered by the agents that started within the interval.","type":"number"},"average_waiting_time":{"description":"Average call waiting duration (in seconds) for calls started within the interval.","type":"number"},"total_calls":{"description":"Number of calls that started within the interval.","type":"number"},"average_handling_time":{"description":"Average call handling duration (in seconds) for calls started within the interval.","type":"number"},"max_waiting_time":{"description":"Maximum call waiting duration (in seconds) for calls started within the interval.","type":"number"},"picked_up_calls":{"description":"Number of picked up calls that started within the interval.","type":"number"},"overflowed_calls":{"description":"Number of overflowed calls that started within the interval.","type":"number"}}},"gupshup-integration-template-parts":{"title":"GupshupIntegrationTemplateParts","type":"object","required":["body"],"properties":{"body":{"$ref":"#\/components\/schemas\/gupshup-integration-template-body"},"header":{"$ref":"#\/components\/schemas\/gupshup-integration-template-header"},"buttons":{"items":{"$ref":"#\/components\/schemas\/gupshup-integration-template-button"},"type":"array"},"footer":{"$ref":"#\/components\/schemas\/gupshup-integration-template-footer"},"header_parameters":{"items":{"$ref":"#\/components\/schemas\/gupshup-integration-template-parameter"},"type":"array","example":[{"sample_value":"https:\/\/fss.gupshup.io\/0\/public\/0\/0\/gupshup\/image.jpg","parameter":"{{1}}"}],"description":"Populated only for `header_format: image`: a single entry for the image. Empty for `text` (this integration does not yet support the single variable WhatsApp allows in a text header) and when the template has no header."},"body_parameters":{"items":{"$ref":"#\/components\/schemas\/gupshup-integration-template-parameter"},"type":"array"}}},"phone-number-bound-conversation-message":{"title":"PhoneNumberBoundConversationMessage","discriminator":{"propertyName":"type","mapping":{"whatsapp_template":"#\/components\/schemas\/whatsapp-template-message","mms":"#\/components\/schemas\/mms-message","whatsapp_session_media":"#\/components\/schemas\/whatsapp-session-media-message","sms":"#\/components\/schemas\/sms-message","whatsapp_session_text":"#\/components\/schemas\/whatsapp-session-text-message"}},"oneOf":[{"$ref":"#\/components\/schemas\/mms-message"},{"$ref":"#\/components\/schemas\/sms-message"},{"$ref":"#\/components\/schemas\/whatsapp-session-media-message"},{"$ref":"#\/components\/schemas\/whatsapp-session-text-message"},{"$ref":"#\/components\/schemas\/whatsapp-template-message"}]},"collection-of-phone-numbers":{"title":"CollectionOfPhoneNumbers","type":"object","required":["items"],"properties":{"items":{"items":{"$ref":"#\/components\/schemas\/phone-number-2"},"type":"array"}}},"session-does-not-exist-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["gupshup_session_does_not_exist"],"type":"string","nullable":false}}}],"example":{"type":"gupshup_session_does_not_exist","status_code":409,"message":"Gupshup session  between +918748133759 and +918748133758 not found..","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"SessionDoesNotExistError"},"chat-message-route-company":{"allOf":[{"$ref":"#\/components\/schemas\/chat-message-route-company-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-route-common"}],"title":"ChatMessageRouteCompany"},"less-than-equals-restriction":{"title":"LessThanEqualsRestriction","type":"object","required":["type"],"properties":{"left":{"oneOf":[{"$ref":"#\/components\/schemas\/field-value"},{"$ref":"#\/components\/schemas\/primitive-literal-value"}]},"type":{"enum":["lte"],"type":"string"},"right":{"oneOf":[{"$ref":"#\/components\/schemas\/field-value"},{"$ref":"#\/components\/schemas\/primitive-literal-value"}]}}},"sip-trunk-reference":{"allOf":[{"$ref":"#\/components\/schemas\/sip-trunk-reference-optional"},{"type":"object","nullable":false}],"title":"SipTrunkReference"},"mcp-server-headers":{"title":"McpServerHeaders","type":"object","additionalProperties":{"items":{"allOf":[{"$ref":"#\/components\/schemas\/templated-string"},{"properties":{"value":{"maxLength":1024}}}]},"type":"array"}},"integration-not-found-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["gupshup_integration_not_found_for_phone_number"],"type":"string","nullable":false}}}],"example":{"type":"gupshup_integration_not_found_for_phone_number","status_code":409,"message":"Gupshup integration with phone number +918748133759 not found.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"IntegrationNotFoundError"},"greater-than-equals-restriction":{"title":"GreaterThanEqualsRestriction","type":"object","required":["type"],"properties":{"left":{"oneOf":[{"$ref":"#\/components\/schemas\/field-value"},{"$ref":"#\/components\/schemas\/primitive-literal-value"}]},"type":{"enum":["gte"],"type":"string"},"right":{"oneOf":[{"$ref":"#\/components\/schemas\/field-value"},{"$ref":"#\/components\/schemas\/primitive-literal-value"}]}}},"gupshup-integration-unsupported-template":{"allOf":[{"$ref":"#\/components\/schemas\/gupshup-integration-template-common"},{"required":["type"],"type":"object","properties":{"type":{"description":"This template is currently not supported.","type":"string","enum":["unsupported"]}}}],"title":"GupshupIntegrationUnsupportedTemplate"},"play-virtual-agent-voice-sample-command":{"title":"PlayVirtualAgentVoiceSampleCommand","type":"object","required":["text"],"properties":{"text":{"description":"The text to synthesize with the voice. Surrounding whitespace is trimmed. A voice that cannot speak text without letters or numbers rejects such text with 422.","type":"string","maxLength":1024,"example":"Hello, and thank you for calling. How can I help you today?"}}},"gupshup-integration-template-text-template-parts":{"allOf":[{"$ref":"#\/components\/schemas\/gupshup-integration-template-parts"},{"required":["header_format"],"type":"object","properties":{"header_format":{"enum":["none","text"],"type":"string"}}}],"example":{"body":"You have received a new update about {{1}}.","header":"Account update","header_format":"text","body_parameters":[{"sample_value":"Name","parameter":"{{1}}"}],"footer":"Thank you."},"title":"GupshupIntegrationTemplateTextTemplateParts"},"template-not-found-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["gupshup_template_not_found"],"type":"string","nullable":false}}}],"example":{"type":"gupshup_template_not_found","status_code":409,"message":"Gupshup template with id 123 not found.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"TemplateNotFoundError"},"update-blocked-caller-command":{"title":"UpdateBlockedCallerCommand","type":"object","required":["blocked_at_level"],"properties":{"blocked_at_level":{"$ref":"#\/components\/schemas\/blocked-caller-blocked-at-level"},"comment":{"description":"An optional short note on the reason behind blocking this number.","type":"string","maxLength":30,"example":"Block all callers from UAE.","nullable":true}}},"invalid-button-parameter-count-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["invalid_button_parameter_count"],"type":"string","nullable":false}}}],"example":{"type":"invalid_button_parameter_count","status_code":409,"message":"Invalid number of button parameters.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"InvalidButtonParameterCountError"},"cursor-fields":{"title":"CursorFields","type":"object","properties":{"before":{"description":"The opaque cursor to paginate backwards. Cannot be used together with `after`. Empty string is treated as omitted value.","type":"string","example":"eyJrIjoiRkM5RDhDQTktRkZCMy00REEzLTg1MEQtNkQ3Nzk5QTMzMTlFIn0=","nullable":true},"after":{"description":"The opaque cursor to paginate forwards. Cannot be used together with `before`. Empty string is treated as omitted value.","type":"string","example":"eyJrIjoiRkM5RDhDQTktRkZCMy00REEzLTg1MEQtNkQ3Nzk5QTMzMTlFIn0=","nullable":true}}},"gupshup-integration-text-template":{"allOf":[{"$ref":"#\/components\/schemas\/gupshup-integration-template-common"},{"required":["parts","type"],"type":"object","properties":{"type":{"enum":["text"],"type":"string"},"parts":{"$ref":"#\/components\/schemas\/gupshup-integration-template-text-template-parts"}}}],"title":"GupshupIntegrationTextTemplate"},"template-type-not-supported-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["template_type_not_supported"],"type":"string","nullable":false}}}],"example":{"type":"template_type_not_supported","status_code":409,"message":"Template type is not supported.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"TemplateTypeNotSupportedError"},"click-to-call-result-outcome":{"title":"ClickToCallResultOutcome","type":"string","x-n2p-enum":{"values":[{"description":"Call was answered on both sides","name":"Answered","value":"answered"},{"description":"Something went wrong","name":"Unanswered","value":"unanswered"}],"name":"ClickToCallResultOutcome","modelAsString":false},"enum":["answered","unanswered"]},"cursor-pagination-fields":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-fields"},{"type":"object","properties":{"limit":{"$ref":"#\/components\/schemas\/limit"}}}],"title":"CursorPaginationFields"},"e164-phone-number-no-plus-nullable":{"pattern":"^[1-9]\\d{5,14}$","description":"Phone number in E.164 international format without a leading \"+\" character.","type":"string","example":"15307636905","nullable":true,"title":"E164PhoneNumberNoPlusNullable"},"gupshup-integration-template-image-template-parts":{"allOf":[{"$ref":"#\/components\/schemas\/gupshup-integration-template-parts"},{"required":["header_format"],"type":"object","properties":{"header_format":{"enum":["image"],"type":"string"}}}],"example":{"body":"You have received a new update about {{1}}.","header_format":"image","body_parameters":[{"sample_value":"Name","parameter":"{{1}}"}],"header_parameters":[{"sample_value":"https:\/\/fss.gupshup.io\/0\/public\/0\/0\/gupshup\/image.jpg","parameter":"{{1}}"}],"footer":"Thank you."},"title":"GupshupIntegrationTemplateImageTemplateParts"},"invalid-header-parameter-count-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["invalid_header_parameter_count"],"type":"string","nullable":false}}}],"example":{"type":"invalid_header_parameter_count","status_code":409,"message":"Invalid number of header parameters.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"InvalidHeaderParameterCountError"},"phone-number-bound-conversation-create-item-error":{"title":"PhoneNumberBoundConversationCreateItemError","discriminator":{"propertyName":"type","mapping":{"gupshup_session_does_not_exist":"#\/components\/schemas\/session-does-not-exist-error","invalid_body_parameter_count":"#\/components\/schemas\/invalid-body-parameter-count-error","gupshup_template_not_found":"#\/components\/schemas\/template-not-found-error","invalid_header_parameter_count":"#\/components\/schemas\/invalid-header-parameter-count-error","gupshup_integration_not_found_for_phone_number":"#\/components\/schemas\/integration-not-found-error","invalid_button_parameter_count":"#\/components\/schemas\/invalid-button-parameter-count-error","template_type_not_supported":"#\/components\/schemas\/template-type-not-supported-error"}},"oneOf":[{"$ref":"#\/components\/schemas\/session-does-not-exist-error"},{"$ref":"#\/components\/schemas\/integration-not-found-error"},{"$ref":"#\/components\/schemas\/template-not-found-error"},{"$ref":"#\/components\/schemas\/template-type-not-supported-error"},{"$ref":"#\/components\/schemas\/invalid-header-parameter-count-error"},{"$ref":"#\/components\/schemas\/invalid-body-parameter-count-error"},{"$ref":"#\/components\/schemas\/invalid-button-parameter-count-error"}]},"gupshup-integration-image-template":{"allOf":[{"$ref":"#\/components\/schemas\/gupshup-integration-template-common"},{"required":["parts","type"],"type":"object","properties":{"type":{"enum":["image"],"type":"string"},"parts":{"$ref":"#\/components\/schemas\/gupshup-integration-template-image-template-parts"}}}],"title":"GupshupIntegrationImageTemplate"},"messaging-enabled-phone-number-assignment-assignee-company-id-typed-reference":{"allOf":[{"type":"object","required":["type"],"nullable":false,"properties":{"type":{"enum":["company"],"type":"string"}}},{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-assignment-assignee-company-id-reference"}],"title":"MessagingEnabledPhoneNumberAssignmentAssigneeCompanyIdTypedReference"},"call-rg-queue-completed-event":{"allOf":[{"required":["user","event"],"type":"object","properties":{"user":{"$ref":"#\/components\/schemas\/webhook-target-account"},"event":{"enum":["call_rg_queue_completed"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallRgQueueCompletedEvent"},"invalid-body-parameter-count-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["invalid_body_parameter_count"],"type":"string","nullable":false}}}],"example":{"type":"invalid_body_parameter_count","status_code":409,"message":"Invalid number of body parameters.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"InvalidBodyParameterCountError"},"multi-composite":{"title":"MultiComposite","type":"object","required":["terms"],"properties":{"terms":{"items":{"allOf":[{"$ref":"#\/components\/schemas\/filter"},{"type":"object","nullable":false}]},"type":"array","minItems":1}}},"messaging-enabled-phone-number-assignment-assignee-company-id-reference":{"title":"MessagingEnabledPhoneNumberAssignmentAssigneeCompanyIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-assignment-assignee-company-id"}}},"not-equals-restriction":{"title":"NotEqualsRestriction","type":"object","required":["type"],"properties":{"left":{"oneOf":[{"$ref":"#\/components\/schemas\/field-value"},{"$ref":"#\/components\/schemas\/primitive-literal-value"}]},"type":{"enum":["neq"],"type":"string"},"right":{"oneOf":[{"$ref":"#\/components\/schemas\/field-value"},{"$ref":"#\/components\/schemas\/primitive-literal-value"}]}}},"gupshup-integration-template":{"title":"GupshupIntegrationTemplate","discriminator":{"propertyName":"type","mapping":{"text":"#\/components\/schemas\/gupshup-integration-text-template","unsupported":"#\/components\/schemas\/gupshup-integration-unsupported-template","image":"#\/components\/schemas\/gupshup-integration-image-template"}},"oneOf":[{"$ref":"#\/components\/schemas\/gupshup-integration-text-template"},{"$ref":"#\/components\/schemas\/gupshup-integration-image-template"},{"$ref":"#\/components\/schemas\/gupshup-integration-unsupported-template"}]},"and-composite":{"allOf":[{"$ref":"#\/components\/schemas\/multi-composite"},{"required":["type"],"type":"object","properties":{"type":{"enum":["and"],"type":"string"}}}],"title":"AndComposite"},"welcome-menu-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the welcome menu within account.","example":"10293993","title":"WelcomeMenuId"},"set-messaging-enabled-phone-number-route-command":{"title":"SetMessagingEnabledPhoneNumberRouteCommand","type":"object","properties":{"route":{"discriminator":{"propertyName":"type","mapping":{"company":"#\/components\/schemas\/chat-message-route-company-id-typed-reference","unassigned":"#\/components\/schemas\/chat-message-route-unassigned-id-typed-reference","user":"#\/components\/schemas\/user-id-typed-reference","department":"#\/components\/schemas\/department-id-typed-reference"}},"oneOf":[{"$ref":"#\/components\/schemas\/chat-message-route-company-id-typed-reference"},{"$ref":"#\/components\/schemas\/department-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-route-unassigned-id-typed-reference"},{"$ref":"#\/components\/schemas\/user-id-typed-reference"}]},"phone_number":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-phone-number"}}},"or-composite":{"allOf":[{"$ref":"#\/components\/schemas\/multi-composite"},{"required":["type"],"type":"object","properties":{"type":{"enum":["or"],"type":"string"}}}],"title":"OrComposite"},"whatsapp-template-message":{"allOf":[{"$ref":"#\/components\/schemas\/whatsapp-template-message-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-common"},{"required":["content","content_type","status"],"type":"object","properties":{"content":{"$ref":"#\/components\/schemas\/gupshup-integration-template"},"content_type":{"example":"application\/json","type":"string"},"delivery_acknowledgment":{"$ref":"#\/components\/schemas\/message-delivery-acknowledgment"},"status":{"$ref":"#\/components\/schemas\/message-common-status"}}}],"title":"WhatsappTemplateMessage"},"not-composite":{"title":"NotComposite","type":"object","required":["type","operand"],"properties":{"type":{"enum":["not"],"type":"string"},"operand":{"allOf":[{"$ref":"#\/components\/schemas\/filter"},{"type":"object","nullable":false}]}}},"model":{"title":"Model","type":"object","properties":{"display_name":{"type":"string"},"is_default":{"description":"Whether this model is the default selection.","type":"boolean"},"tier":{"$ref":"#\/components\/schemas\/tier"},"id":{"type":"string"}}},"phone-number-conflict-error":{"title":"PhoneNumberConflictError","discriminator":{"propertyName":"type","mapping":{"phone_number_assignment_required_error":"#\/components\/schemas\/phone-number-assignment-required-error","phone_number_used_as_caller_id_error":"#\/components\/schemas\/phone-number-used-as-caller-id-error"}},"oneOf":[{"$ref":"#\/components\/schemas\/phone-number-assignment-required-error"},{"$ref":"#\/components\/schemas\/phone-number-used-as-caller-id-error"}]},"field-value":{"pattern":"^\\$\\.[a-z](\\.?[a-z]([a-z0-9_])*)*$","description":"References a primitive field inside the filtered data structure. May include nested items. Pointing inside arrays is not supported.","type":"string","example":"$.user.id","title":"FieldValue"},"toggle-overage-command":{"title":"ToggleOverageCommand","type":"object","required":["enabled"],"properties":{"enabled":{"description":"Boolean flag indicating whether overage is allowed for the account.\n\n- **true** — Overage is enabled; usage can exceed allocated limits and may incur additional charges.\n- **false** — Overage is disabled; usage is capped at the allocated limits.","type":"boolean"}}},"limits":{"title":"Limits","description":"Virtual Agent limits.","type":"object","required":["max_agents","quotas","field_limits","payload_limits"],"nullable":false,"properties":{"field_limits":{"$ref":"#\/components\/schemas\/limits-field-limits"},"payload_limits":{"$ref":"#\/components\/schemas\/limits-payload-limits"},"max_agents":{"description":"The maximum number of Agents that the account can create. Deprecated: use quotas.virtual_agents.limit instead.","type":"integer","deprecated":true,"nullable":false,"format":"int32"},"quotas":{"$ref":"#\/components\/schemas\/limits-quotas"}}},"phone-number-bound-conversation-move-over-workflow-assign-command":{"title":"PhoneNumberBoundConversationMoveOverWorkflowAssignCommand","type":"object","required":["type","assignee"],"properties":{"type":{"enum":["assign"],"type":"string"},"assignee":{"$ref":"#\/components\/schemas\/user-id-reference"}}},"collection-of-live-activity-report":{"title":"CollectionOfLiveActivityReport","type":"object","required":["items","iana_timezone_id"],"properties":{"items":{"items":{"$ref":"#\/components\/schemas\/live-activity-bucket"},"type":"array"},"iana_timezone_id":{"$ref":"#\/components\/schemas\/iana-timezone-id-with-utc-default"}}},"update-tool-command":{"title":"UpdateToolCommand","type":"object","required":["display_name","description","type","inputs","response"],"properties":{"display_name":{"$ref":"#\/components\/schemas\/tool-display-name"},"description":{"$ref":"#\/components\/schemas\/tool-description"},"type":{"$ref":"#\/components\/schemas\/tool-type"},"execution_mode":{"allOf":[{"$ref":"#\/components\/schemas\/tool-execution-mode"}],"default":"service"},"response":{"$ref":"#\/components\/schemas\/tool-response"},"request":{"$ref":"#\/components\/schemas\/tool-request"},"inputs":{"$ref":"#\/components\/schemas\/tool-inputs"}}},"string-literal-value":{"pattern":"^(?!\\$\\.).*","description":"String literal value. Must not start with `$.` as it's a reserved prefix for field names. The dates and timestamps are also encoded as string literal values in [ISO 8601](https:\/\/en.wikipedia.org\/wiki\/ISO_8601) format.","type":"string","example":"John","title":"StringLiteralValue"},"sip-trunk-call-direction":{"title":"SipTrunkCallDirection","type":"string","x-n2p-enum":{"values":[{"name":"Inbound","description":"The call is classified as `inbound` when it is incoming from the PSTN (Public Switched Telephone Network) to the client.\n","value":"inbound"},{"name":"Outbound","description":"The call is classified as `outbound` when it is outgoing from the client to the PSTN (Public Switched Telephone Network).\n","value":"outbound"}],"name":"SipTrunkCallDirection","modelAsString":false},"enum":["inbound","outbound"]},"phone-number-bound-conversation-move-over-workflow-claim-command":{"title":"PhoneNumberBoundConversationMoveOverWorkflowClaimCommand","type":"object","required":["type"],"properties":{"type":{"enum":["claim"],"type":"string"}}},"primitive-variable-value":{"title":"PrimitiveVariableValue","description":"A reserved variable from which the API will determine the value. Different variables may have different type. For example, you can't use a variable representing a list of values in the place where a single value is expected.","type":"object","properties":{"type":{"enum":["var"],"type":"string"},"id":{"type":"string","nullable":false}},"nullable":false},"phone-number-assignment-required-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["phone_number_assignment_required_error"],"type":"string","nullable":false}}}],"example":{"type":"phone_number_assignment_required_error","status_code":409,"message":"You can not delete or unassign this Phone Number, because this is assigned to a user and that user doesn't have another Phone Number assigned.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"PhoneNumberAssignmentRequiredError"},"phone-number-bound-conversation-move-over-workflow-complete-command":{"title":"PhoneNumberBoundConversationMoveOverWorkflowCompleteCommand","type":"object","required":["type"],"properties":{"type":{"enum":["complete"],"type":"string"}}},"port-out-request":{"title":"PortOutRequest","description":"A customer request to port phone numbers away from net2phone.","type":"object","required":["port_reason","port_timeframe","pins"],"properties":{"port_reason":{"$ref":"#\/components\/schemas\/port-out-reason"},"billing_account":{"allOf":[{"$ref":"#\/components\/schemas\/billing-account"}],"description":"Set to `null` when the billing system holds no account for the customer."},"port_timeframe":{"$ref":"#\/components\/schemas\/port-out-timeframe"},"pins":{"description":"The port-out PIN of every requested phone number.","type":"array","items":{"$ref":"#\/components\/schemas\/port-out-pin"}},"feedback":{"description":"Additional details about the port-out reason, as provided by the customer.","type":"string","nullable":true}}},"create-tool-command":{"title":"CreateToolCommand","type":"object","required":["display_name","description","type","inputs","response"],"properties":{"display_name":{"$ref":"#\/components\/schemas\/tool-display-name"},"description":{"$ref":"#\/components\/schemas\/tool-description"},"type":{"$ref":"#\/components\/schemas\/tool-type"},"execution_mode":{"allOf":[{"$ref":"#\/components\/schemas\/tool-execution-mode"}],"default":"service"},"response":{"$ref":"#\/components\/schemas\/tool-response"},"request":{"$ref":"#\/components\/schemas\/tool-request"},"inputs":{"$ref":"#\/components\/schemas\/tool-inputs"}}},"set-registration-toll-free-messaging-enabled-phone-number-channel-request":{"title":"SetRegistrationTollFreeMessagingEnabledPhoneNumberChannelRequest","description":"Request to register a toll-free phone number for SMS\/MMS messaging with a specified messaging direction.\n\n**Note:** This request type is currently deprecated and will be supported in a future release.","type":"object","required":["type","phone_number","messaging_direction"],"properties":{"messaging_direction":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel-sms-mms-messaging-direction"},"phone_number":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-phone-number"},"type":{"enum":["set_registration_toll_free"],"type":"string","description":"The type of request."}},"deprecated":true},"phone-number-used-as-caller-id-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["phone_number_used_as_caller_id_error"],"type":"string","nullable":false}}}],"example":{"type":"phone_number_used_as_caller_id_error","status_code":409,"message":"You can not delete or unassign this Phone Number, because this is being used as a caller id by one or more team members.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"PhoneNumberUsedAsCallerIdError"},"unset-registration-messaging-enabled-phone-number-channel-request":{"title":"UnsetRegistrationMessagingEnabledPhoneNumberChannelRequest","description":"Request to unregister a phone number from SMS\/MMS messaging.","type":"object","required":["type","phone_number"],"properties":{"phone_number":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-phone-number"},"type":{"enum":["unset_registration"],"type":"string","description":"The type of request."}}},"tool-delete-in-use-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["tool_delete_in_use_error"],"type":"string","nullable":false}}}],"example":{"type":"tool_delete_in_use_error","status_code":409,"message":"Tool cannot be deleted because it's in use by at least one Virtual Agent.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"ToolDeleteInUseError"},"set-messaging-enabled-phone-number-registration-command":{"title":"SetMessagingEnabledPhoneNumberRegistrationCommand","discriminator":{"propertyName":"type","mapping":{"set_registration_campaign_registry":"#\/components\/schemas\/set-registration-campaign-registry-messaging-enabled-phone-number-channel-request","set_registration_toll_free":"#\/components\/schemas\/set-registration-toll-free-messaging-enabled-phone-number-channel-request","set_registration_unrestricted":"#\/components\/schemas\/set-registration-unrestricted-messaging-enabled-phone-number-channel-request","unset_registration":"#\/components\/schemas\/unset-registration-messaging-enabled-phone-number-channel-request"}},"oneOf":[{"$ref":"#\/components\/schemas\/set-registration-unrestricted-messaging-enabled-phone-number-channel-request"},{"$ref":"#\/components\/schemas\/set-registration-toll-free-messaging-enabled-phone-number-channel-request"},{"$ref":"#\/components\/schemas\/set-registration-campaign-registry-messaging-enabled-phone-number-channel-request"},{"$ref":"#\/components\/schemas\/unset-registration-messaging-enabled-phone-number-channel-request"}],"description":"Command to set the registration state of the sms_mms channel for a messaging-enabled phone number."},"phone-number-bound-conversation-external-phone-number":{"title":"PhoneNumberBoundConversationExternalPhoneNumber","type":"object","required":["phone_number_e164_canonical_form"],"properties":{"phone_number_e164_canonical_form":{"$ref":"#\/components\/schemas\/e164-phone-number-with-plus"}}},"equals-restriction":{"title":"EqualsRestriction","type":"object","required":["type"],"properties":{"left":{"oneOf":[{"$ref":"#\/components\/schemas\/field-value"},{"$ref":"#\/components\/schemas\/primitive-literal-value"}]},"type":{"enum":["eq"],"type":"string"},"right":{"oneOf":[{"$ref":"#\/components\/schemas\/field-value"},{"$ref":"#\/components\/schemas\/primitive-literal-value"}]}}},"phone-number-reference-2":{"title":"PhoneNumberReference2","type":"object","required":["id","phone_number","phone_number_e164_canonical_form"],"properties":{"phone_number_e164_canonical_form":{"$ref":"#\/components\/schemas\/e164-phone-number-with-plus"},"phone_number":{"$ref":"#\/components\/schemas\/phone-number-id-2"},"id":{"$ref":"#\/components\/schemas\/phone-number-id-2"}}},"tool-delete-error":{"title":"ToolDeleteError","discriminator":{"propertyName":"type","mapping":{"tool_delete_in_use_error":"#\/components\/schemas\/tool-delete-in-use-error"}},"type":"object","required":["type"],"oneOf":[{"$ref":"#\/components\/schemas\/tool-delete-in-use-error"}],"properties":{"type":{"type":"string"}}},"phone-number-bound-conversation-dialog-transfer-flags":{"title":"PhoneNumberBoundConversationDialogTransferFlags","description":"Actions the current user can take on the transfer of the latest dialog.\nScoped to the current viewer and the current state, so it is exposed only on the live latest dialog,\nnever on historical dialog snapshots (e.g. inside dialog change system messages).\nPresent only when the latest dialog is in the \"transferring\" status; absent otherwise.","type":"object","required":["can_accept","can_decline","can_cancel"],"properties":{"can_decline":{"description":"Whether the current user can decline the transfer.","type":"boolean"},"can_accept":{"description":"Whether the current user can accept the transfer.","type":"boolean"},"can_cancel":{"description":"Whether the current user can cancel the transfer. Available to admins and the transfer initiator.","type":"boolean"}}},"phone-number-assignee-reference":{"title":"PhoneNumberAssigneeReference","description":"The callable resource to which this Phone Number should be assigned to.","oneOf":[{"$ref":"#\/components\/schemas\/user-id-typed-reference"},{"$ref":"#\/components\/schemas\/department-id-typed-reference"},{"$ref":"#\/components\/schemas\/ring-group-id-typed-reference"},{"$ref":"#\/components\/schemas\/welcome-menu-id-typed-reference"},{"$ref":"#\/components\/schemas\/special-extension-id-typed-reference"},{"$ref":"#\/components\/schemas\/call-queue-id-typed-reference"}],"discriminator":{"propertyName":"type","mapping":{"welcome_menu":"#\/components\/schemas\/welcome-menu-id-typed-reference","call_queue":"#\/components\/schemas\/call-queue-id-typed-reference","special_extension":"#\/components\/schemas\/special-extension-id-typed-reference","ring_group":"#\/components\/schemas\/ring-group-id-typed-reference","user":"#\/components\/schemas\/user-id-typed-reference","department":"#\/components\/schemas\/department-id-typed-reference"}}},"mcp-server-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the MCP Server.","example":"12345","title":"McpServerId"},"list-of-primitive-literal-value":{"title":"ListOfPrimitiveLiteralValue","items":{"$ref":"#\/components\/schemas\/primitive-literal-value"},"type":"array","minItems":1},"assign-phone-number-command":{"title":"AssignPhoneNumberCommand","type":"object","required":["assignee"],"properties":{"assignee":{"$ref":"#\/components\/schemas\/phone-number-assignee-reference"}}},"in-restriction":{"title":"InRestriction","type":"object","required":["type","left","right"],"properties":{"left":{"$ref":"#\/components\/schemas\/field-value"},"type":{"enum":["in"],"type":"string"},"right":{"oneOf":[{"$ref":"#\/components\/schemas\/list-of-primitive-literal-value"},{"$ref":"#\/components\/schemas\/primitive-variable-value"}]}}},"special-extension-type":{"title":"SpecialExtensionType","description":"The type of the special extension.","type":"string","x-n2p-enum":{"values":[{"name":"Fax","description":"The `special_extension` is intended to use on a fax machine.","value":"fax"},{"name":"Intercom","description":"The `special_extension` is intended to use on an intercom phone.","value":"intercom"},{"name":"Pager","description":"The `special_extension` is intended to use on a pager.","value":"pager"},{"name":"Ringer","description":"The `special_extension` is intended to use on a ringer.","value":"ringer"},{"name":"Five9","description":"The `special_extension` is intended to use for partner integration with Five9 (https:\/\/www.five9.com).","value":"five9"},{"name":"Remote Access Voicemail","description":"The `special_extension` is intended to access the voicemail remotely.","value":"remote_access_voicemail"},{"name":"Tie Line","description":"Special extension used to route calls over a private SIP trunk connection between systems","value":"tie_line"}],"name":"SpecialExtensionType","modelAsString":false},"enum":["fax","intercom","pager","ringer","five9","remote_access_voicemail","tie_line"]},"unassign-phone-number-command-optional":{"title":"UnassignPhoneNumberCommandOptional","type":"object","nullable":true,"properties":{"ignore_if_used_as_caller_id":{"$ref":"#\/components\/schemas\/ignore-if-used-as-caller-id"}}},"string-starts-with-restriction":{"title":"StringStartsWithRestriction","description":"Checks if the string field starts from a prefix.","type":"object","required":["type","left","right"],"properties":{"left":{"$ref":"#\/components\/schemas\/field-value"},"type":{"enum":["string_starts_with"],"type":"string"},"right":{"$ref":"#\/components\/schemas\/string-literal-value"}}},"mcp-server-description":{"title":"McpServerDescription","type":"string","maxLength":1024,"example":"Description of the MCP Server","nullable":false},"contact-type-filter-value":{"title":"ContactTypeFilterValue","description":"Contact type to filter by.","type":"string","enum":["user","department","ring_group","welcome_menu","special_extension","call_queue"]},"cursor-item-fields":{"title":"CursorItemFields","type":"object","required":["cursor"],"properties":{"cursor":{"description":"The opaque cursor to paginate starting from that specific element.","type":"string","example":"eyJ2IjoxLCJrIjoyMTkzNDd9"}}},"phone-number-bound-conversation-latest-dialog":{"allOf":[{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-dialog-reference"},{"description":"The live representation of the latest dialog. Extends the dialog snapshot with the current user's\navailable transfer actions, which are scoped to the current viewer and state and therefore do not\nbelong on historical dialog snapshots.","type":"object","properties":{"transfer_flags":{"allOf":[{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-dialog-transfer-flags"}],"description":"The current user's available transfer actions when `status` is `transferring`. Absent for all other statuses."}}}],"title":"PhoneNumberBoundConversationLatestDialog"},"contact-id":{"title":"ContactId","description":"Unique identifier of the contact within net2phone account.","type":"string","minLength":1,"example":"enspawhd64sk4"},"mcp-server-server-url":{"title":"McpServerServerUrl","description":"The URL of the MCP Server.","type":"string","maxLength":2000,"example":"https:\/\/my-mcp-server-v1.com","nullable":false,"format":"uri"},"cursor-page-of-virtual-agent-conversation":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-page"},{"required":["items"],"type":"object","properties":{"items":{"items":{"allOf":[{"$ref":"#\/components\/schemas\/conversation"},{"$ref":"#\/components\/schemas\/cursor-item-fields"}]},"type":"array"}}}],"title":"CursorPageOfVirtualAgentConversation"},"user-id-typed-reference":{"allOf":[{"type":"object","required":["type"],"nullable":false,"properties":{"type":{"enum":["user"],"type":"string"}}},{"$ref":"#\/components\/schemas\/user-id-reference"}],"title":"UserIdTypedReference"},"contact-common":{"allOf":[{"$ref":"#\/components\/schemas\/timestamp-audit-fields-immutable"},{"type":"object","required":["id","extension","phone_numbers"],"nullable":false,"properties":{"phone_numbers":{"items":{"$ref":"#\/components\/schemas\/phone-number-reference-deprecated"},"type":"array"},"extension":{"$ref":"#\/components\/schemas\/phone-extension"},"id":{"$ref":"#\/components\/schemas\/contact-id"}}}],"title":"ContactCommon"},"call-queue-agent-call-info":{"title":"CallQueueAgentCallInfo","type":"object","properties":{"call_start_handling_time":{"nullable":true,"type":"string","format":"date-time"},"in_queue":{"type":"boolean","nullable":false},"from":{"$ref":"#\/components\/schemas\/call-endpoint"},"direction":{"$ref":"#\/components\/schemas\/call-queue-call-direction"},"call_start_time":{"nullable":false,"type":"string","format":"date-time"},"caller":{"$ref":"#\/components\/schemas\/call-queue-caller-common"}}},"tts-voice-gender":{"title":"TtsVoiceGender","enum":["male","female"],"type":"string"},"call-consultative-transfer-reason":{"title":"CallConsultativeTransferReason","type":"string","x-n2p-enum":{"values":[{"name":"Transferrer","description":"Tells the transfer has been initiated by the caller.","value":"transferer"},{"name":"Transferee","description":"Tells the transfer has been initiated by the callee.","value":"transferee"}],"name":"CallConsultativeTransferReason","modelAsString":false},"enum":["transferer","transferee"]},"department-id-reference":{"title":"DepartmentIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/department-id"}}},"voice-conversation-template-description":{"title":"VoiceConversationTemplateDescription","type":"string","maxLength":1024,"example":"Description of the Voice Conversation Template","nullable":true},"department-id-typed-reference":{"allOf":[{"type":"object","required":["type"],"nullable":false,"properties":{"type":{"enum":["department"],"type":"string"}}},{"$ref":"#\/components\/schemas\/department-id-reference"}],"title":"DepartmentIdTypedReference"},"mcp-server":{"title":"McpServer","type":"object","required":["id","display_name","server_url"],"properties":{"display_name":{"$ref":"#\/components\/schemas\/mcp-server-display-name"},"description":{"$ref":"#\/components\/schemas\/mcp-server-description"},"created_by":{"$ref":"#\/components\/schemas\/audit-actor"},"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"server_url":{"$ref":"#\/components\/schemas\/mcp-server-server-url"},"updated_by":{"$ref":"#\/components\/schemas\/audit-actor"},"headers":{"$ref":"#\/components\/schemas\/mcp-server-headers"},"tool_filter":{"$ref":"#\/components\/schemas\/mcp-server-tool-filter"},"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"},"id":{"$ref":"#\/components\/schemas\/mcp-server-id"}}},"sip-trunk-call-detail-record-caller":{"title":"SipTrunkCallDetailRecordCaller","discriminator":{"propertyName":"type","mapping":{"external_phone_number":"#\/components\/schemas\/sip-trunk-external-phone-number-caller","sip_trunk":"#\/components\/schemas\/sip-trunk-caller"}},"oneOf":[{"$ref":"#\/components\/schemas\/sip-trunk-external-phone-number-caller"},{"$ref":"#\/components\/schemas\/sip-trunk-caller"}]},"department-contact":{"allOf":[{"$ref":"#\/components\/schemas\/contact-common"},{"required":["type","department"],"type":"object","properties":{"department":{"$ref":"#\/components\/schemas\/department-reference"},"type":{"enum":["department"],"type":"string"}}}],"title":"DepartmentContact"},"voice-conversation-template-display-name":{"title":"VoiceConversationTemplateDisplayName","description":"The unique name of the Voice Conversation Template.","type":"string","maxLength":100,"example":"my-voice-conversation-template","nullable":false},"post-conversation-summary-task":{"title":"PostConversationSummaryTask","description":"Lifecycle status of the conversation summary generation task.","type":"object","properties":{"finished_at_time":{"description":"When the task reached its end state (`completed`, `failed`, or `skipped`). Always present for a terminal status; `null` while `pending`. Approximate for conversations whose status was backfilled after the summary already existed.","type":"string","nullable":true,"format":"date-time"},"status":{"description":"Status of summary generation. `pending` — a summary is expected; keep polling. `completed` — the summary was generated and the `summary` object is populated. `failed` — generation was attempted and permanently failed; `summary` is `null`. `skipped` — terminal: no summary will ever be generated for this conversation (for example, it ended without any user message).","type":"string","enum":["pending","completed","failed","skipped"]}}},"sip-trunk-external-phone-number-callee":{"title":"SipTrunkExternalPhoneNumberCallee","type":"object","required":["type"],"properties":{"type":{"enum":["external_phone_number"],"type":"string","description":"External PSTN (Public switched telephone network) phone number."}}},"limits-quota-instance":{"title":"LimitsQuotaInstance","description":"One instance's usage within a scoped quota, e.g. a single virtual agent's voice conversation template count.","type":"object","required":["id","display_name","used"],"properties":{"display_name":{"description":"The display name of the instance this usage applies to.","type":"string"},"used":{"description":"The current usage for this instance.","type":"integer","example":3,"minimum":0,"format":"int64"},"id":{"description":"The identifier of the instance this usage applies to.","type":"string"}}},"ring-group-contact":{"allOf":[{"$ref":"#\/components\/schemas\/contact-common"},{"required":["type","ring_group"],"type":"object","properties":{"ring_group":{"$ref":"#\/components\/schemas\/ring-group-reference"},"type":{"enum":["ring_group"],"type":"string"}}}],"title":"RingGroupContact"},"whatsapp-session-text-message":{"allOf":[{"$ref":"#\/components\/schemas\/whatsapp-session-text-message-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-common"},{"required":["content","content_type","status"],"type":"object","properties":{"content":{"type":"string"},"content_type":{"example":"text\/x-markdown","type":"string"},"delivery_acknowledgment":{"$ref":"#\/components\/schemas\/message-delivery-acknowledgment"},"status":{"$ref":"#\/components\/schemas\/message-common-status"}}}],"title":"WhatsappSessionTextMessage"},"whatsapp-session-text-message-id-typed-reference":{"allOf":[{"required":["type"],"type":"object","properties":{"type":{"description":"A rich text WhatsApp message supporting a [subset of Markdown](https:\/\/faq.whatsapp.com\/539178204879377\/?cms_platform=web).","type":"string","enum":["whatsapp_session_text"]}}},{"$ref":"#\/components\/schemas\/chat-message-id-reference"}],"example":{"type":"whatsapp_session_text","id":"42"},"title":"WhatsappSessionTextMessageIdTypedReference"},"sip-trunk-call-detail-record-callee":{"title":"SipTrunkCallDetailRecordCallee","discriminator":{"propertyName":"type","mapping":{"external_phone_number":"#\/components\/schemas\/sip-trunk-external-phone-number-callee","sip_trunk":"#\/components\/schemas\/sip-trunk-callee"}},"oneOf":[{"$ref":"#\/components\/schemas\/sip-trunk-external-phone-number-callee"},{"$ref":"#\/components\/schemas\/sip-trunk-callee"}]},"update-voice-conversation-template-command":{"title":"UpdateVoiceConversationTemplateCommand","type":"object","required":["display_name","initial_greeting","languages"],"properties":{"display_name":{"$ref":"#\/components\/schemas\/voice-conversation-template-display-name"},"description":{"$ref":"#\/components\/schemas\/voice-conversation-template-description"},"background_audio":{"$ref":"#\/components\/schemas\/voice-conversation-template-background-audio"},"transfer_scenarios":{"$ref":"#\/components\/schemas\/voice-transfer-scenarios"},"languages":{"description":"The languages that the Virtual Agent will support for the voice conversation.","type":"array","items":{"$ref":"#\/components\/schemas\/voice-conversation-template-language"}},"inactivity_detection":{"$ref":"#\/components\/schemas\/voice-conversation-template-inactivity-detection"},"initial_greeting":{"allOf":[{"$ref":"#\/components\/schemas\/templated-string"},{"properties":{"value":{"maxLength":1024}}}],"description":"The initial greeting that the Virtual Agent will respond with."},"interrupt_tts":{"description":"Controls whether the bot Text-To-Speech (TTS) will be interrupted when the user speaks.","type":"boolean","default":false},"end_of_speech_silence":{"$ref":"#\/components\/schemas\/voice-conversation-template-end-of-speech-silence"}}},"welcome-menu-contact":{"allOf":[{"$ref":"#\/components\/schemas\/contact-common"},{"required":["type","welcome_menu"],"type":"object","properties":{"welcome_menu":{"$ref":"#\/components\/schemas\/welcome-menu-reference"},"type":{"enum":["welcome_menu"],"type":"string"}}}],"title":"WelcomeMenuContact"},"welcome-menu-id-reference":{"title":"WelcomeMenuIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/welcome-menu-id"}}},"e164-phone-number-nullable":{"pattern":"^\\+?[1-9]\\d{5,14}$","description":"Phone number in E.164 international format which may include \"+\" character.","type":"string","example":"15307636905","nullable":true,"title":"E164PhoneNumberNullable"},"call-queue-reference":{"allOf":[{"$ref":"#\/components\/schemas\/call-queue-reference-optional"},{"type":"object","nullable":false}],"title":"CallQueueReference"},"sip-trunk-call-detail-record":{"title":"SipTrunkCallDetailRecord","type":"object","required":["id","sip_trunk","direction","result","from","to","caller","callee","start_time","end_time","duration_seconds","created_at_time","burstable"],"properties":{"result":{"$ref":"#\/components\/schemas\/sip-trunk-call-result"},"caller":{"$ref":"#\/components\/schemas\/sip-trunk-call-detail-record-caller"},"reason_code_group":{"$ref":"#\/components\/schemas\/sip-trunk-call-reason-code-group"},"forwarded_to":{"$ref":"#\/components\/schemas\/e164-phone-number-nullable"},"id":{"$ref":"#\/components\/schemas\/sip-trunk-call-detail-record-id"},"created_at_time":{"allOf":[{"description":"The time when the finished call is fully processed and saved as a call detail record. This would typically be later than the `end_time` of the call."},{"$ref":"#\/components\/schemas\/created-at-time"}]},"start_time":{"description":"Start time of the call formatted as an [ISO 8601](https:\/\/en.wikipedia.org\/wiki\/ISO_8601) timestamp.","type":"string","example":"2022-06-01T07:20:00Z","format":"date-time"},"from":{"$ref":"#\/components\/schemas\/e164-phone-number"},"to":{"$ref":"#\/components\/schemas\/e164-phone-number"},"failed_over_to":{"$ref":"#\/components\/schemas\/e164-phone-number-nullable"},"end_time":{"description":"End time of the call formatted as an [ISO 8601](https:\/\/en.wikipedia.org\/wiki\/ISO_8601) timestamp.","type":"string","example":"2022-06-01T07:35:00Z","format":"date-time"},"duration_seconds":{"description":"Total duration of the call in seconds. If the call was picked-up, duration should be greater than zero.","type":"integer","example":30,"format":"int32"},"sip_trunk":{"$ref":"#\/components\/schemas\/sip-trunk-reference"},"burstable":{"description":"Shows whenever call burst over channel limit.","type":"boolean"},"reason_code":{"$ref":"#\/components\/schemas\/sip-trunk-call-reason-code"},"direction":{"$ref":"#\/components\/schemas\/sip-trunk-call-direction"},"callee":{"$ref":"#\/components\/schemas\/sip-trunk-call-detail-record-callee"}}},"call-queue-contact":{"allOf":[{"$ref":"#\/components\/schemas\/contact-common"},{"required":["type","call_queue"],"type":"object","properties":{"type":{"enum":["call_queue"],"type":"string"},"call_queue":{"$ref":"#\/components\/schemas\/call-queue-reference"}}}],"title":"CallQueueContact"},"chat-message-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the chat message entity.","example":"1234","title":"ChatMessageId"},"mcp-server-create-error":{"title":"McpServerCreateError","discriminator":{"propertyName":"type","mapping":{"maximum_mcp_servers_limit_reached_error":"#\/components\/schemas\/mcp-server-create-maximum-mcp-servers-limit-reached-error"}},"type":"object","required":["type"],"oneOf":[{"$ref":"#\/components\/schemas\/mcp-server-create-maximum-mcp-servers-limit-reached-error"}],"properties":{"type":{"type":"string"}}},"special-extension-contact":{"allOf":[{"$ref":"#\/components\/schemas\/contact-common"},{"required":["type","special_extension"],"type":"object","properties":{"special_extension":{"$ref":"#\/components\/schemas\/special-extension-reference"},"type":{"enum":["special_extension"],"type":"string"}}}],"title":"SpecialExtensionContact"},"validation-error-code":{"title":"ValidationErrorCode","description":"Machine-readable validation error code.","type":"string","enum":["required","range","length","regular_expression","email","phone_number",null],"nullable":true},"contact":{"title":"Contact","description":"Provides contact information like phone number or an internal extension number. New contact types might be introduced over time, so prefer to handle unknown contact types gracefully when parsing contact search results.","oneOf":[{"$ref":"#\/components\/schemas\/user-contact"},{"$ref":"#\/components\/schemas\/department-contact"},{"$ref":"#\/components\/schemas\/ring-group-contact"},{"$ref":"#\/components\/schemas\/welcome-menu-contact"},{"$ref":"#\/components\/schemas\/call-queue-contact"},{"$ref":"#\/components\/schemas\/special-extension-contact"}],"discriminator":{"propertyName":"type","mapping":{"welcome_menu":"#\/components\/schemas\/welcome-menu-contact","call_queue":"#\/components\/schemas\/call-queue-contact","special_extension":"#\/components\/schemas\/special-extension-contact","ring_group":"#\/components\/schemas\/ring-group-contact","user":"#\/components\/schemas\/user-contact","department":"#\/components\/schemas\/department-contact"}}},"message-delivery-acknowledgment":{"title":"MessageDeliveryAcknowledgment","discriminator":{"propertyName":"type","mapping":{"failed":"#\/components\/schemas\/message-delivery-acknowledgment-type-failed","delivered":"#\/components\/schemas\/message-delivery-acknowledgment-type-delivered","pending":"#\/components\/schemas\/message-delivery-acknowledgment-type-pending"}},"oneOf":[{"$ref":"#\/components\/schemas\/message-delivery-acknowledgment-type-delivered"},{"$ref":"#\/components\/schemas\/message-delivery-acknowledgment-type-failed"},{"$ref":"#\/components\/schemas\/message-delivery-acknowledgment-type-pending"}]},"mcp-server-delete-in-use-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["mcp_server_delete_in_use_error"],"type":"string","nullable":false}}}],"example":{"type":"mcp_server_delete_in_use_error","status_code":409,"message":"MCP Server cannot be deleted because it's in use by at least one Virtual Agent.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"McpServerDeleteInUseError"},"channel-conversation-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the channel conversation.","example":"42","title":"ChannelConversationId"},"gupshup-integration-template-footer":{"title":"GupshupIntegrationTemplateFooter","description":"Footer of the Gupshup template.","type":"string","minLength":1,"example":"Thank you."},"unified-message-activity-item-typed-reference":{"title":"UnifiedMessageActivityItemTypedReference","oneOf":[{"$ref":"#\/components\/schemas\/direct-user-message-activity-item-typed-reference"},{"$ref":"#\/components\/schemas\/direct-group-message-activity-item-typed-reference"},{"$ref":"#\/components\/schemas\/phone-number-bound-message-activity-item-typed-reference"},{"$ref":"#\/components\/schemas\/channel-message-activity-item-typed-reference"}]},"validation-error-detail":{"title":"ValidationErrorDetail","type":"object","required":["message"],"properties":{"field":{"description":"The optional name\/path of the invalid field. The field can come as a path, query, header or body parameter.","type":"string","nullable":true},"code":{"$ref":"#\/components\/schemas\/validation-error-code"},"message":{"description":"Human readable explanation of the error in US English.","type":"string","nullable":false}}},"mcp-server-delete-error":{"title":"McpServerDeleteError","discriminator":{"propertyName":"type","mapping":{"mcp_server_delete_in_use_error":"#\/components\/schemas\/mcp-server-delete-in-use-error"}},"type":"object","required":["type"],"oneOf":[{"$ref":"#\/components\/schemas\/mcp-server-delete-in-use-error"}],"properties":{"type":{"type":"string"}}},"cursor-page-of-contact":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-page"},{"required":["items"],"type":"object","properties":{"items":{"items":{"$ref":"#\/components\/schemas\/contact"},"type":"array"}}}],"title":"CursorPageOfContact"},"sip-trunk-call-ip-address":{"title":"SipTrunkCallIpAddress","description":"IPv4 address. For `inbound` call shows the client target IP address that accepted the call (The destination IP address that the INVITE was sent to). For `outbound` call the client origin IP address (The source IP from the INVITE).","type":"string","example":"1.2.3.4"},"mcp-server-tool":{"title":"McpServerTool","type":"object","required":["description","input_schema","name"],"properties":{"input_schema":{"description":"The JSON schema for the input of the tool.","type":"object","additionalProperties":{"$ref":"#\/components\/schemas\/tool-json-schema"}},"name":{"description":"The name of the tool.","type":"string"},"description":{"description":"The description of the tool.","type":"string"}}},"validation-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["details","type"],"type":"object","properties":{"type":{"enum":["validation_error"],"type":"string","nullable":false},"details":{"description":"List of validation details.","type":"array","nullable":false,"items":{"$ref":"#\/components\/schemas\/validation-error-detail"}}}}],"example":{"type":"validation_error","status_code":422,"message":"The provided request contains invalid data.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00","details":[{"message":"Something was wrong with the object provided."},{"message":"'First Name' must not be empty.","code":"required","field":"first_name"}]},"title":"ValidationError"},"chat-message-route-welcome-menu":{"allOf":[{"$ref":"#\/components\/schemas\/welcome-menu-typed-reference-optional"},{"$ref":"#\/components\/schemas\/chat-message-route-common"}],"title":"ChatMessageRouteWelcomeMenu"},"welcome-menu-typed-reference-optional":{"allOf":[{"type":"object","required":["type"],"nullable":true,"properties":{"type":{"enum":["welcome_menu"],"type":"string"}}},{"$ref":"#\/components\/schemas\/welcome-menu-reference-optional"}],"title":"WelcomeMenuTypedReferenceOptional"},"sip-trunk-account-status":{"title":"SipTrunkAccountStatus","type":"string","x-n2p-enum":{"values":[{"description":"Account open. Can be set from `closed`, `suspended`, `creditLimitHit`.","name":"Opened","value":"opened"},{"description":"Account closed. Can be set from `opened`, `suspended`, `creditLimitHit`.","name":"Closed","value":"closed"},{"description":"Account suspended. Can be set from `opened`, `creditLimitHit`.","name":"Suspended","value":"suspended"},{"description":"SIP trunk account has hit the credit limit. Can be set from `opened`.","name":"CreditLimitHit","value":"credit_limit_hit"}],"name":"SipTrunkAccountStatus","modelAsString":false},"enum":["opened","closed","suspended","credit_limit_hit"]},"cursor-page-of-sip-trunk-call-detail-record":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-page"},{"required":["items"],"type":"object","properties":{"items":{"items":{"$ref":"#\/components\/schemas\/sip-trunk-call-detail-record"},"type":"array"}}}],"title":"CursorPageOfSipTrunkCallDetailRecord"},"campaign-registry-campaign-id":{"title":"CampaignRegistryCampaignId","description":"The unique id of the campaign within Campaign Registry.","type":"string","example":"CFB0PPH"},"mcp-server-tools-response":{"title":"McpServerToolsResponse","type":"object","properties":{"tools":{"items":{"$ref":"#\/components\/schemas\/mcp-server-tool"},"type":"array"},"error":{"description":"Error information if listing MCP server tools failed.","type":"object","required":["code","message"],"nullable":true,"properties":{"message":{"description":"A human-readable explanation of the error.","type":"string"},"code":{"enum":["mcp_connection_error","mcp_listing_error"],"type":"string"}}},"next_cursor":{"description":"The opaque cursor for fetching the next page. Only set if there are more tools to fetch.","type":"string","nullable":true}}},"virtual-fax-id-typed-reference-optional":{"allOf":[{"type":"object","required":["type"],"nullable":true,"properties":{"type":{"enum":["virtual_fax"],"type":"string"}}},{"$ref":"#\/components\/schemas\/virtual-fax-id-reference"}],"title":"VirtualFaxIdTypedReferenceOptional"},"forbidden-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["forbidden_error"],"type":"string","nullable":false}}}],"example":{"type":"forbidden_error","status_code":403,"message":"The operation is blocked due to insufficient access rights.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"ForbiddenError"},"cursor-page-of-huddle-dial-in-phone-number":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-page"},{"required":["items"],"type":"object","properties":{"items":{"items":{"$ref":"#\/components\/schemas\/huddle-dial-in-phone-number"},"type":"array"},"request_region_code":{"allOf":[{"$ref":"#\/components\/schemas\/region-code-optional"},{"description":"The region code that was inferred from the request's IP address or other information. It can be useful to select phone numbers to show to the users according to their location. If it's not possible to determine the region from the request, the field will be set to `null` or omitted.","example":"US"}]}}}],"title":"CursorPageOfHuddleDialInPhoneNumber"},"not-found-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["not_found_error"],"type":"string","nullable":false}}}],"example":{"type":"not_found_error","status_code":404,"message":"The user with id '25' was not found.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"NotFoundError"},"current-user-id":{"title":"CurrentUserId","description":"The id of the currently authenticated user.","type":"string","enum":["@me"]},"phone-number-bound-conversation-id-reference":{"title":"PhoneNumberBoundConversationIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-id"}}},"authentication-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["authentication_error"],"type":"string","nullable":false}}}],"example":{"type":"authentication_error","status_code":401,"message":"The operation requires authentication but token is missing.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"AuthenticationError"},"chat-message-route-unassigned":{"allOf":[{"$ref":"#\/components\/schemas\/chat-message-route-unassigned-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-route-common"}],"title":"ChatMessageRouteUnassigned"},"call-forwarding-mode":{"title":"CallForwardingMode","description":"The rule to decide how a call should be forwarded, or not. By default it's set to `null` which is equivalent to disabled call forwarding.","type":"string","x-n2p-enum":{"values":[{"name":"Ring All","description":"Ring user's and forwarding numbers at the same time.","value":"ring_all"},{"name":"No Answer","description":"If the user doesn't answer, forward the call.","value":"no_answer"},{"name":"Failover","description":"If the user is not online (no connected devices), forward the call.","value":"failover"},{"name":"Forward Only","description":"Do not ring the user, always forward the call.","value":"forward_only"}],"name":"CallForwardingMode","modelAsString":false},"enum":["ring_all","no_answer","failover","forward_only",null],"nullable":true,"default":null},"system-actor-optional":{"title":"SystemActorOptional","type":"object","required":["type"],"properties":{"type":{"enum":["system"],"type":"string","description":"The resource was created or modified by the automated process or net2phone support team member."}},"nullable":true},"chat-message-route-special-extension":{"allOf":[{"$ref":"#\/components\/schemas\/special-extension-typed-reference-optional"},{"$ref":"#\/components\/schemas\/chat-message-route-common"}],"title":"ChatMessageRouteSpecialExtension"},"sip-trunk-account-service-address-common":{"title":"SipTrunkAccountServiceAddressCommon","type":"object","required":["display_name","address_line_1","city","state_code","postal_code"],"properties":{"display_name":{"type":"string","minLength":1,"maxLength":50,"example":"Main Office"},"address_line_1":{"type":"string","minLength":1,"maxLength":250,"example":"520 Broad Street"},"state_code":{"description":"The state or province code.","type":"string","minLength":1,"maxLength":10,"example":"NJ"},"postal_code":{"description":"The zip or postal code.","type":"string","minLength":1,"maxLength":10,"example":"07101"},"address_line_2":{"maxLength":250,"example":"Block G","type":"string"},"city":{"type":"string","minLength":1,"maxLength":100,"example":"Newark"}}},"direct-user-conversation-create-item-command":{"title":"DirectUserConversationCreateItemCommand","type":"object","properties":{"attachments":{"items":{"$ref":"#\/components\/schemas\/chat-message-attachment-id-reference"},"type":"array"},"content":{"description":"Text content of the sent message.","type":"string"}}},"voice-conversation-template-assignment":{"title":"VoiceConversationTemplateAssignment","type":"object","required":["virtual_agent_id","voice_conversation_template_id","assigned_at_time"],"properties":{"virtual_agent_id":{"$ref":"#\/components\/schemas\/virtual-agent-id"},"voice_conversation_template_id":{"$ref":"#\/components\/schemas\/voice-conversation-template-id"},"assigned_at_time":{"$ref":"#\/components\/schemas\/assigned-at-time"}}},"error":{"title":"Error","description":"The base type for all errors.","type":"object","required":["message","status_code","trace_id"],"properties":{"message":{"description":"A human-readable explanation of the problem in US English.","type":"string","nullable":false},"trace_id":{"description":"Tracing identifier of the request. Including this in support requests will help to narrow down the issue.","type":"string","example":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00","nullable":false},"status_code":{"description":"The same status code as in the HTTP response. Don't use this to determine the error type, use the \"type\" field instead.","minimum":400,"type":"integer","maximum":599,"nullable":false,"format":"int32"}},"discriminator":{"propertyName":"type","mapping":{"bad_request_error":"#\/components\/schemas\/bad-request-error","validation_error":"#\/components\/schemas\/validation-error","forbidden_error":"#\/components\/schemas\/forbidden-error","ThrottlingError":"#\/components\/schemas\/throttling-error","authentication_error":"#\/components\/schemas\/authentication-error","gateway_timeout_error":"#\/components\/schemas\/gateway-timeout-error","not_supported_error":"#\/components\/schemas\/not-supported-error","internal_server_error":"#\/components\/schemas\/internal-server-error","not_found_error":"#\/components\/schemas\/not-found-error"}}},"update-messaging-enabled-phone-number-assignment-command":{"title":"UpdateMessagingEnabledPhoneNumberAssignmentCommand","type":"object","required":["assignee","phone_number","assignment_status"],"properties":{"phone_number":{"$ref":"#\/components\/schemas\/e164-phone-number-with-plus"},"assignment_status":{"$ref":"#\/components\/schemas\/phone-number-assignment-status"},"assignee":{"allOf":[{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-assignment-assignee-reference"}],"type":"object","nullable":true}}},"invalid-request-error":{"anyOf":[{"$ref":"#\/components\/schemas\/validation-error"},{"$ref":"#\/components\/schemas\/not-supported-error"}],"discriminator":{"propertyName":"type","mapping":{"not_supported_error":"#\/components\/schemas\/not-supported-error","validation_error":"#\/components\/schemas\/validation-error"}},"title":"InvalidRequestError"},"mcp-tool-configuration-input-mappings":{"title":"McpToolConfigurationInputMappings","description":"Maps MCP tool input parameters to system-provided values. \nThe key is the input parameter name; the value is a templated string that is resolved at runtime. \nMapped inputs are injected automatically when the tool is called instead of being inferred from user input.","type":"object","additionalProperties":{"allOf":[{"$ref":"#\/components\/schemas\/templated-string"},{"properties":{"value":{"maxLength":1024}}}]},"nullable":true},"cursor-page-of-messaging-enabled-phone-number-assignment":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-page"},{"required":["items"],"type":"object","properties":{"items":{"items":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-assignment"},"type":"array"}}}],"title":"CursorPageOfMessagingEnabledPhoneNumberAssignment"},"gupshup-integration-app-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique ID of the user's Gupshup application.","example":"cebxx8x1-xxf6-406c-901x-3f78xxxx5ea","title":"GupshupIntegrationAppId"},"mcp-tool-configuration":{"title":"McpToolConfiguration","type":"object","required":["tool_name","response"],"properties":{"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"},"created_by":{"$ref":"#\/components\/schemas\/audit-actor"},"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"input_mappings":{"$ref":"#\/components\/schemas\/mcp-tool-configuration-input-mappings"},"updated_by":{"$ref":"#\/components\/schemas\/audit-actor"},"response":{"$ref":"#\/components\/schemas\/tool-response"},"description":{"$ref":"#\/components\/schemas\/mcp-tool-configuration-description"},"tool_name":{"$ref":"#\/components\/schemas\/mcp-tool-configuration-tool-name"}}},"messaging-enabled-phone-number":{"title":"MessagingEnabledPhoneNumber","type":"object","required":["id","phone_number","current_user_access","route","channels"],"properties":{"current_user_access":{"description":"Access level for the current user to this phone number.","type":"string","enum":["messaging_allowed","reference_only"]},"route":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-route"},"phone_number":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-phone-number"},"channels":{"items":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel"},"type":"array"},"id":{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-id"}}},"conversation-message-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the conversation message.","example":"12345","title":"ConversationMessageId"},"callee":{"title":"Callee","description":"A person or a special extension device that received a call. Set to `null` if the call wasn't routed to a `User`, `Special Extension` or an external phone number. For example, calls that reached the `Department` but weren't answered would have the `callee` field set to `null`.","anyOf":[{"$ref":"#\/components\/schemas\/user-callee-optional"},{"$ref":"#\/components\/schemas\/special-extension-callee-optional"},{"$ref":"#\/components\/schemas\/external-phone-number-callee-optional"}],"discriminator":{"propertyName":"type","mapping":{"special_extension":"#\/components\/schemas\/special-extension-callee-optional","external_phone_number":"#\/components\/schemas\/external-phone-number-callee-optional","user":"#\/components\/schemas\/user-callee-optional"}}},"audit-actor-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the audit actor.","example":"12345","title":"AuditActorId"},"conversation-message-id-reference":{"title":"ConversationMessageIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/conversation-message-id"}}},"call-forwarding-ring-strategy":{"title":"CallForwardingRingStrategy","description":"Describes how the configured phone numbers or extensions are dialed during call forwarding.","type":"string","x-n2p-enum":{"values":[{"name":"Simultaneous","description":"Ring simultaneously, all at once.","value":"simultaneous"},{"name":"Sequential","description":"Ring sequentially, one by one.","value":"sequential"}],"name":"CallForwardingRingStrategy","modelAsString":false},"enum":["simultaneous","sequential"],"default":"simultaneous"},"call-recording-analytics-job-results-sentiment-analysis-insights-overall-reason":{"title":"CallRecordingAnalyticsJobResultsSentimentAnalysisInsightsOverallReason","description":"The reason for the inferred sentiment label.","type":"object","properties":{"language_code":{"$ref":"#\/components\/schemas\/language-code"},"content":{"type":"string"}},"nullable":true},"conversation-message-role":{"title":"ConversationMessageRole","description":"The role of a conversation message.","type":"string","enum":["agent","user","tool"]},"create-mcp-tool-configuration-command":{"title":"CreateMcpToolConfigurationCommand","type":"object","required":["tool_name","response"],"properties":{"tool_name":{"$ref":"#\/components\/schemas\/mcp-tool-configuration-tool-name"},"input_mappings":{"$ref":"#\/components\/schemas\/mcp-tool-configuration-input-mappings"},"response":{"$ref":"#\/components\/schemas\/tool-response"},"description":{"$ref":"#\/components\/schemas\/mcp-tool-configuration-description"}}},"sip-trunk-account-service-address-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"title":"SipTrunkAccountServiceAddressId"},"avatar-image":{"title":"AvatarImage","type":"object","required":["url","kind"],"properties":{"size_pixels":{"$ref":"#\/components\/schemas\/avatar-image-size"},"url":{"example":"https:\/\/n2p-messaging-prod-storage.s3.us-east-1.amazonaws.com\/6082ce5e436acf00018faf27-1619430611421-200px.jpg","type":"string"},"kind":{"$ref":"#\/components\/schemas\/avatar-image-kind"}}},"user-actor-optional":{"allOf":[{"$ref":"#\/components\/schemas\/user-reference"},{"required":["type"],"type":"object","properties":{"type":{"enum":["user"],"type":"string","description":"The resource was created or modified by net2phone team member."}}}],"type":"object","nullable":true,"title":"UserActorOptional"},"huddle-room-display-name-uniqueness-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["huddle_room_display_name_uniqueness_error"],"type":"string","nullable":false}}}],"example":{"type":"huddle_room_display_name_uniqueness_error","status_code":409,"message":"The user already has a non-expiring room with the same name.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"HuddleRoomDisplayNameUniquenessError"},"actor-optional":{"title":"ActorOptional","discriminator":{"propertyName":"type","mapping":{"system":"#\/components\/schemas\/system-actor-optional","user":"#\/components\/schemas\/user-actor-optional"}},"type":"object","anyOf":[{"$ref":"#\/components\/schemas\/system-actor-optional"},{"$ref":"#\/components\/schemas\/user-actor-optional"}],"nullable":true},"e164-phone-number":{"pattern":"^\\+?[1-9]\\d{5,14}$","description":"Phone number in E.164 international format which may include \"+\" character.","type":"string","example":"15307636905","title":"E164PhoneNumber"},"mcp-server-tool-configuration-create-error":{"title":"McpServerToolConfigurationCreateError","discriminator":{"propertyName":"type","mapping":{"maximum_mcp_tool_configurations_limit_reached_error":"#\/components\/schemas\/mcp-server-tool-configuration-create-maximum-mcp-tool-configurations-limit-reached-error"}},"type":"object","required":["type"],"oneOf":[{"$ref":"#\/components\/schemas\/mcp-server-tool-configuration-create-maximum-mcp-tool-configurations-limit-reached-error"}],"properties":{"type":{"type":"string"}}},"phone-number-bound-conversation-move-over-workflow-decline-transfer-command":{"title":"PhoneNumberBoundConversationMoveOverWorkflowDeclineTransferCommand","type":"object","required":["type"],"properties":{"internal_note":{"description":"An optional private note providing context for declining the transfer. Not visible to the external customer.","type":"string"},"type":{"enum":["decline_transfer"],"type":"string"}}},"actor-audit-fields":{"title":"ActorAuditFields","type":"object","required":["created_by"],"properties":{"created_by":{"$ref":"#\/components\/schemas\/actor"},"updated_by":{"$ref":"#\/components\/schemas\/actor-optional"}},"nullable":true},"update-mcp-tool-configuration-command":{"title":"UpdateMcpToolConfigurationCommand","type":"object","required":["response"],"properties":{"input_mappings":{"$ref":"#\/components\/schemas\/mcp-tool-configuration-input-mappings"},"response":{"$ref":"#\/components\/schemas\/tool-response"},"description":{"$ref":"#\/components\/schemas\/mcp-tool-configuration-description"}}},"phone-extension":{"pattern":"^[1-9]\\d{2,5}$","description":"A short number used to make internal calls.","type":"string","example":"1415","title":"PhoneExtension"},"preview-mcp-server-headers":{"title":"PreviewMcpServerHeaders","description":"The HTTP headers to send to the MCP server for this preview call. This value length limit is intentionally higher than in the create and update operations: those validate the stored jq template (short), while this one validates the resolved value the UI collects from the user for a live preview call.","type":"object","additionalProperties":{"items":{"allOf":[{"$ref":"#\/components\/schemas\/templated-string"},{"properties":{"value":{"maxLength":8192}}}]},"type":"array"}},"sip-trunk-account-service-address":{"allOf":[{"$ref":"#\/components\/schemas\/sip-trunk-account-service-address-common"},{"description":"Service address for emergency services use.","type":"object","required":["id","is_default","can_be_deleted","can_be_updated"],"properties":{"is_default":{"readOnly":true,"description":"Specifies whether this service address is the default for the account.","type":"boolean"},"can_be_deleted":{"readOnly":true,"description":"Indicates if the service address can be deleted. Deletion is not allowed if the address is currently in use (assigned to a phone number).","type":"boolean"},"can_be_updated":{"readOnly":true,"description":"Indicates if the service address can be updated. Updating is not allowed if the address is currently in use (assigned to a phone number).","type":"boolean"},"id":{"$ref":"#\/components\/schemas\/sip-trunk-account-service-address-id"}}},{"$ref":"#\/components\/schemas\/timestamp-audit-fields"},{"$ref":"#\/components\/schemas\/actor-audit-fields"}],"title":"SipTrunkAccountServiceAddress"},"create-conversation-message-command":{"title":"CreateConversationMessageCommand","type":"object","required":["content"],"properties":{"context":{"description":"Optional JSON object merged into the conversation's context for this message. Keys overwrite existing values and the merged context is persisted.","type":"object","additionalProperties":true},"content":{"type":"string"}}},"preview-mcp-server-tools-command":{"title":"PreviewMcpServerToolsCommand","type":"object","required":["server_url"],"properties":{"server_url":{"$ref":"#\/components\/schemas\/mcp-server-server-url"},"headers":{"$ref":"#\/components\/schemas\/preview-mcp-server-headers"},"cursor":{"description":"The opaque cursor to paginate forwards.","type":"string"}}},"voicemail":{"allOf":[{"$ref":"#\/components\/schemas\/voicemail-reference-optional-deprecated"},{"description":"A detailed view of a `Voicemail` resource.","type":"object","nullable":false,"properties":{"updated_by":{"$ref":"#\/components\/schemas\/user-reference-optional-deprecated"}}}],"title":"Voicemail"},"sip-trunk-call-reason-code-group":{"title":"SipTrunkCallReasonCodeGroup","description":"ISDN (Q.850) reason code of the call (https:\/\/en.wikipedia.org\/wiki\/ISDN_User_Part#Cause_codes) mapped to a readable value.","type":"string","x-n2p-enum":{"values":[{"name":"Completed","description":"The call is classified as `completed` if the call is completed with an ISDN reason code of 16 or 31.\n","value":"completed"},{"name":"Failed","description":"The call is classified as `failed` if the call is completed with any ISDN reason code except 16 and 31.\n","value":"failed"},{"name":"ChannelExhaustionLimited","description":"The call is classified as `channel_exhaustion_limited` if the call is completed with an ISDN reason code of 34.\n","value":"channel_exhaustion_limited"},{"name":"CostLimited","description":"The call is classified as `cost_limited` if the call is completed with ISDN reason codes 52 or 54.\n","value":"cost_limited"}],"name":"SipTrunkCallReasonCodeGroup","modelAsString":false},"enum":["completed","failed","channel_exhaustion_limited","cost_limited"]},"feature-unavailable-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["feature_unavailable_error"],"type":"string","nullable":false}}}],"example":{"type":"feature_unavailable_error","status_code":402,"message":"The feature is not available for your account or might require additional licenses.","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"FeatureUnavailableError"},"conversation-name-changed":{"allOf":[{"$ref":"#\/components\/schemas\/conversation-name-changed-message-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-common"},{"required":["old_display_name","new_display_name","triggered_by"],"type":"object","properties":{"new_display_name":{"$ref":"#\/components\/schemas\/channel-conversation-display-name"},"old_display_name":{"$ref":"#\/components\/schemas\/channel-conversation-display-name"},"triggered_by":{"$ref":"#\/components\/schemas\/actor"}}}],"title":"ConversationNameChanged"},"current-usage":{"title":"CurrentUsage","description":"Current usage information.","type":"object","required":["company_name","credit_limit","credits_used"],"properties":{"overage_used":{"description":"The number of overage credits used.","type":"integer"},"company_name":{"description":"The name of the company.","type":"string"},"overage_allowed":{"description":"Whether overage usage is allowed.","type":"boolean"},"credit_limit":{"description":"The monthly credit limit.","type":"integer"},"credits_used":{"description":"The number of credits used in the current month.","type":"integer"},"overage_enabled":{"description":"Whether overage usage is enabled.","type":"boolean"}}},"virtual-agent-display-name":{"title":"VirtualAgentDisplayName","description":"The unique name of the Virtual Agent.","type":"string","maxLength":100,"example":"my-virtual-agent-v1","nullable":false},"phone-number-bound-conversation-move-over-workflow-transfer-command":{"title":"PhoneNumberBoundConversationMoveOverWorkflowTransferCommand","description":"Transfers the conversation from the assigned state to the transferring state, temporarily releasing ownership from the initiator pending the transferee's acceptance.","type":"object","required":["type","transferee"],"properties":{"internal_note":{"description":"An optional private message so the recipient has context before accepting.","type":"string"},"type":{"enum":["transfer"],"type":"string"},"transferee":{"description":"The user or department to transfer the conversation to.","oneOf":[{"$ref":"#\/components\/schemas\/user-id-typed-reference"},{"$ref":"#\/components\/schemas\/department-id-typed-reference"}],"discriminator":{"propertyName":"type","mapping":{"department":"#\/components\/schemas\/department-id-typed-reference","user":"#\/components\/schemas\/user-id-typed-reference"}}}}},"port-out-pin":{"title":"PortOutPin","description":"The port-out PIN of a single phone number.","type":"object","required":["phone_number"],"properties":{"phone_number":{"$ref":"#\/components\/schemas\/e164-phone-number-with-plus"},"pin":{"description":"The PIN to hand over to the gaining carrier. Set to `null` when the PIN could not be retrieved automatically and the support team has to reach out to the customer to complete the port-out.","type":"string","example":"1234","nullable":true}}},"call-park-event":{"allOf":[{"required":["slot","user","event"],"type":"object","properties":{"event":{"enum":["call_park"],"type":"string"},"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user who parked the call."},"slot":{"allOf":[{"$ref":"#\/components\/schemas\/slot"}],"description":"The slot number of the parked call. You should use this slot number to retrieve (unpark) the call later."}}},{"$ref":"#\/components\/schemas\/call-webhook-event"}],"title":"CallParkEvent"},"sip-trunk-account":{"allOf":[{"description":"SIP Trunk Account.","type":"object","required":["id","display_name","status"],"nullable":false,"properties":{"display_name":{"description":"SIP Trunk account name.","type":"string"},"created_by":{"$ref":"#\/components\/schemas\/system-actor"},"id":{"$ref":"#\/components\/schemas\/sip-trunk-account-id"},"max_burstable_channels":{"description":"Specifies the maximum number of burstable channels allowed for this account's trunks.","type":"integer","minimum":0,"format":"int32"},"updated_by":{"$ref":"#\/components\/schemas\/system-actor-optional"},"default_service_address":{"$ref":"#\/components\/schemas\/sip-trunk-account-service-address"},"status":{"$ref":"#\/components\/schemas\/sip-trunk-account-status"}}},{"$ref":"#\/components\/schemas\/timestamp-audit-fields"}],"title":"SipTrunkAccount"},"port-out-reason":{"title":"PortOutReason","description":"The reason the customer is porting the phone numbers away from net2phone.","type":"string","x-n2p-enum":{"values":[{"name":"Pricing","description":"The customer is leaving because of the price.","value":"pricing"},{"name":"Lack Of Features","description":"The customer needs features net2phone does not offer.","value":"lack_of_features"},{"name":"Services No Longer Needed","description":"The customer does not need the service any more.","value":"services_no_longer_needed"},{"name":"Business Closed","description":"The company closed or was acquired.","value":"business_closed"},{"name":"Downsizing","description":"The company downsized or restructured.","value":"downsizing"},{"name":"Support","description":"The customer is leaving because of the support experience.","value":"support"},{"name":"Other","description":"The customer gave a reason that does not fit the other options.","value":"other"}],"name":"PortOutReason","modelAsString":false},"enum":["pricing","lack_of_features","services_no_longer_needed","business_closed","downsizing","support","other"]},"batch-create-phone-numbers-command":{"title":"BatchCreatePhoneNumbersCommand","type":"object","required":["requests"],"properties":{"requests":{"items":{"$ref":"#\/components\/schemas\/create-phone-number-command"},"type":"array","minItems":1,"maxItems":100,"uniqueItems":true}}},"phone-number-bound-conversation-move-over-workflow-accept-transfer-command":{"title":"PhoneNumberBoundConversationMoveOverWorkflowAcceptTransferCommand","type":"object","required":["type"],"properties":{"type":{"enum":["accept_transfer"],"type":"string"}}},"virtual-agent-description":{"title":"VirtualAgentDescription","type":"string","maxLength":1024,"example":"Description of the Virtual Agent","nullable":true},"collection-of-agent-activity-report":{"title":"CollectionOfAgentActivityReport","type":"object","required":["items","interval_size","iana_timezone_id"],"properties":{"interval_size":{"$ref":"#\/components\/schemas\/interval-size"},"items":{"items":{"$ref":"#\/components\/schemas\/agent-activity-bucket"},"type":"array"},"iana_timezone_id":{"$ref":"#\/components\/schemas\/iana-timezone-id-with-utc-default"}}},"collection-of-campaign-registry-campaign-sharing-rejection-reason":{"title":"CollectionOfCampaignRegistryCampaignSharingRejectionReason","type":"object","required":["items"],"properties":{"items":{"items":{"$ref":"#\/components\/schemas\/campaign-registry-campaign-sharing-rejection-reason"},"type":"array"}}},"assigned-at-time":{"title":"AssignedAtTime","description":"The timestamp of a when the resource was assigned.","type":"string","nullable":true,"format":"date-time"},"usage-billing-info":{"title":"UsageBillingInfo","description":"Billing information for usage tracking.","type":"object","properties":{"credits":{"description":"Number of credits consumed.","type":"integer"},"tier":{"$ref":"#\/components\/schemas\/tier"}},"nullable":true},"tier":{"title":"Tier","enum":["standard","premium"],"type":"string"},"sort":{"title":"Sort","type":"object","properties":{"direction":{"$ref":"#\/components\/schemas\/sort-direction"},"by":{"$ref":"#\/components\/schemas\/field-value"}}},"conversation-from":{"title":"ConversationFrom","description":"The phone number in E.164 format or \"Anonymous\" if the caller has turned off caller ID.","type":"string"},"phone-number-bound-conversation-move-over-workflow-cancel-transfer-command":{"title":"PhoneNumberBoundConversationMoveOverWorkflowCancelTransferCommand","type":"object","required":["type"],"properties":{"type":{"enum":["cancel_transfer"],"type":"string"}}},"messaging-enabled-phone-number-route":{"allOf":[{"$ref":"#\/components\/schemas\/chat-message-route"}],"title":"MessagingEnabledPhoneNumberRoute"},"cursor-page-has-after":{"title":"CursorPageHasAfter","description":"If false, this is the last page of data.","type":"boolean"},"updated-at-time":{"title":"UpdatedAtTime","description":"The last update timestamp of a resource.","type":"string","nullable":true,"format":"date-time"},"phone-number-bound-conversation-move-over-workflow-unassign-command":{"title":"PhoneNumberBoundConversationMoveOverWorkflowUnassignCommand","type":"object","required":["type"],"properties":{"type":{"enum":["unassign"],"type":"string"}}},"integer-account-id":{"title":"IntegerAccountId","description":"Unique identifier of the account.","minimum":1,"type":"integer","example":42,"nullable":false,"format":"int32"},"phone-number-bound-conversation-move-over-workflow-command":{"title":"PhoneNumberBoundConversationMoveOverWorkflowCommand","discriminator":{"propertyName":"type","mapping":{"accept_transfer":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-accept-transfer-command","claim":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-claim-command","decline_transfer":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-decline-transfer-command","assign":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-assign-command","unassign":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-unassign-command","complete":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-complete-command","transfer":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-transfer-command","cancel_transfer":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-cancel-transfer-command"}},"oneOf":[{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-assign-command"},{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-claim-command"},{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-complete-command"},{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-transfer-command"},{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-accept-transfer-command"},{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-decline-transfer-command"},{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-cancel-transfer-command"},{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-move-over-workflow-unassign-command"}]},"knowledge-base-id-reference":{"title":"KnowledgeBaseIdReference","type":"object","required":["id"],"properties":{"id":{"$ref":"#\/components\/schemas\/knowledge-base-id"}}},"cursor-page-of-phone-number":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-page"},{"required":["items"],"type":"object","properties":{"items":{"items":{"$ref":"#\/components\/schemas\/phone-number-2"},"type":"array"},"counters":{"$ref":"#\/components\/schemas\/phone-number-assignment-counters-optional"}}}],"title":"CursorPageOfPhoneNumber"},"knowledge-base-display-name":{"title":"KnowledgeBaseDisplayName","description":"The unique name of the Knowledge Base.","type":"string","maxLength":100,"example":"my-knowledge-base-v1","nullable":false},"chat-message":{"allOf":[{"$ref":"#\/components\/schemas\/chat-message-id-typed-reference"},{"$ref":"#\/components\/schemas\/chat-message-common"},{"required":["can_be_edited","can_be_deleted","can_reaction_be_added","status"],"type":"object","properties":{"can_be_edited":{"description":"Indicates whether the message can be edited by the current user.","type":"boolean"},"can_reaction_be_added":{"description":"Indicates whether reaction can be added to the message by the current user.","type":"boolean"},"content_type":{"description":"The content mime-type. Currently \"text\/html\" or \"text\/x-markdown\".","type":"string","example":"text\/html"},"updated_by":{"$ref":"#\/components\/schemas\/actor"},"reactions":{"items":{"$ref":"#\/components\/schemas\/message-common-reaction"},"type":"array"},"attachments":{"items":{"$ref":"#\/components\/schemas\/chat-message-attachment-reference"},"type":"array"},"content":{"type":"string"},"can_be_deleted":{"description":"Indicates whether the message can be deleted by the current user.","type":"boolean"},"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"status":{"$ref":"#\/components\/schemas\/message-common-status"}}}],"title":"ChatMessage"},"chat-message-cursor":{"title":"ChatMessageCursor","description":"The cursor taken from the chat message.","type":"string","example":"018c90bf-ad1b-4db5-459b-e288ac68ae90","format":"uuid"},"update-virtual-agent-command":{"title":"UpdateVirtualAgentCommand","type":"object","properties":{"display_name":{"$ref":"#\/components\/schemas\/virtual-agent-display-name"},"description":{"$ref":"#\/components\/schemas\/virtual-agent-description"},"llm_model_tier":{"$ref":"#\/components\/schemas\/virtual-agent-llm-model-tier"},"time_settings":{"allOf":[{"$ref":"#\/components\/schemas\/virtual-agent-time-settings"}],"description":"Time settings for the Virtual Agent. Resets to the default `timezone` of `UTC` and `inject_datetime` of `false` if not provided.","nullable":true},"summary_language":{"$ref":"#\/components\/schemas\/conversation-summary-language"},"llm_model_id":{"$ref":"#\/components\/schemas\/virtual-agent-llm-model-id"},"prompt":{"allOf":[{"$ref":"#\/components\/schemas\/templated-string"},{"properties":{"value":{"maxLength":20000}}}],"description":"Prompt with instructions to the Virtual Agent. The service limits the value to 20000 bytes of UTF-8, so a value containing multi-byte characters is rejected before reaching 20000 characters."},"messaging_settings":{"allOf":[{"$ref":"#\/components\/schemas\/virtual-agent-messaging-settings"}],"description":"Messaging settings for the Virtual Agent. Resets to the default `inactivity_timeout_minutes` of 1440 (24 hours) if not provided.","nullable":true},"chat_settings":{"allOf":[{"$ref":"#\/components\/schemas\/virtual-agent-chat-settings"}],"description":"Chat settings for the Virtual Agent. Resets to the default `inactivity_timeout_minutes` of 1440 (24 hours) if not provided.","nullable":true}}},"knowledge-base-reference":{"allOf":[{"$ref":"#\/components\/schemas\/knowledge-base-id-reference"},{"required":["display_name"],"type":"object","properties":{"display_name":{"$ref":"#\/components\/schemas\/knowledge-base-display-name"},"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"},"created_by":{"$ref":"#\/components\/schemas\/audit-actor"},"updated_at_time":{"$ref":"#\/components\/schemas\/updated-at-time"},"updated_by":{"$ref":"#\/components\/schemas\/audit-actor"}}}],"title":"KnowledgeBaseReference"},"phone-number-bound-conversation-dialog-reference":{"title":"PhoneNumberBoundConversationDialogReference","description":"A grouping element for a sequential set of messages.\nIt is used to divide the message feed into logical blocks dedicated to solving a specific issue.\nAllows to track resolution status.","type":"object","required":["type"],"properties":{"type":{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-dialog-type"},"assignee":{"$ref":"#\/components\/schemas\/actor"},"status":{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-dialog-status"},"transfer_details":{"allOf":[{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-dialog-transfer-details"}],"description":"Transfer details associated with the most recent transfer for this dialog. Present when a transfer exists (e.g. pending, accepted), absent otherwise."},"id":{"$ref":"#\/components\/schemas\/dialog-id"}}},"virtual-agent":{"allOf":[{"$ref":"#\/components\/schemas\/virtual-agent-reference"},{"type":"object","properties":{"knowledge_bases":{"description":"The Knowledge Bases this Virtual Agent will have access to.","type":"array","items":{"$ref":"#\/components\/schemas\/object-assignment"}},"time_settings":{"$ref":"#\/components\/schemas\/virtual-agent-time-settings"},"company_directories":{"description":"The company directories this Virtual Agent has access to. May be `null` or an empty array.","type":"array","nullable":true,"items":{"$ref":"#\/components\/schemas\/n2p-directory-configuration"}},"summary_language":{"$ref":"#\/components\/schemas\/conversation-summary-language"},"llm_model_id":{"description":"The identifier of the LLM model the Virtual Agent uses, corresponding to the `id` of a model returned by the `List virtual agent models` operation.","type":"string","example":"premium-1.0"},"mcp_servers":{"description":"The MCP servers this Virtual Agent will have access to. May be `null` or an empty array.","type":"array","nullable":true,"items":{"$ref":"#\/components\/schemas\/mcp-server-assignment"}},"description":{"$ref":"#\/components\/schemas\/virtual-agent-description"},"chat_settings":{"$ref":"#\/components\/schemas\/virtual-agent-chat-settings"},"prompt":{"$ref":"#\/components\/schemas\/templated-string"},"messaging_settings":{"$ref":"#\/components\/schemas\/virtual-agent-messaging-settings"},"tools":{"description":"The tools this Virtual Agent will have access to.","type":"array","items":{"$ref":"#\/components\/schemas\/tool-assignment"}}}}],"title":"VirtualAgent"},"phone-number-bound-conversation-reference":{"allOf":[{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-id-typed-reference"},{"required":["external_phone_number","internal_phone_number","latest_dialog","current_message_route"],"type":"object","properties":{"internal_phone_number":{"$ref":"#\/components\/schemas\/phone-number-reference-2"},"external_phone_number":{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-external-phone-number"},"latest_dialog":{"$ref":"#\/components\/schemas\/phone-number-bound-conversation-latest-dialog"},"current_message_route":{"$ref":"#\/components\/schemas\/chat-message-route"}}}],"title":"PhoneNumberBoundConversationReference"},"knowledge-base-description":{"title":"KnowledgeBaseDescription","type":"string","maxLength":1024,"example":"Description of the Knowledge Base","nullable":true},"gupshup-integration-template-category":{"title":"GupshupIntegrationTemplateCategory","type":"string","x-n2p-enum":{"values":[{"name":"Authentication","description":"Authentication templates enable businesses to authenticate users with one-time passcodes (usually 4-8 digit alphanumeric codes), potentially at multiple steps in the login process (e.g., account verification, account recovery, integrity challenges).\nhttps:\/\/developers.facebook.com\/docs\/whatsapp\/updates-to-pricing\/new-template-guidelines\/#authentication-templates\n","value":"authentication"},{"name":"Marketing","description":"Marketing templates  enable businesses to achieve a wide range of goals, from generating awareness to driving sales and more.\nhttps:\/\/developers.facebook.com\/docs\/whatsapp\/updates-to-pricing\/new-template-guidelines\/#marketing-templates\n","value":"marketing"},{"name":"Utility","description":"Utility templates are typically triggered by a user action or request. They must include specificity about the active or ongoing transaction, account, subscription or interaction to which they relate. For example, an order confirmation must contain an order number.\nhttps:\/\/developers.facebook.com\/docs\/whatsapp\/updates-to-pricing\/new-template-guidelines\/#utility-templates\n","value":"utility"}],"name":"GupshupIntegrationTemplateCategory","modelAsString":false},"enum":["authentication","marketing","utility"]},"chat-message-route-common":{"title":"ChatMessageRouteCommon","type":"object","properties":{"fallback":{"anyOf":[{"$ref":"#\/components\/schemas\/chat-message-route-fallback-admins"}],"description":"Specifies the entity to which the message is redirected in case of an issue."},"issue":{"$ref":"#\/components\/schemas\/chat-message-route-issue"}}},"chat-message-common":{"title":"ChatMessageCommon","description":"The chat message.","type":"object","required":["cursor","conversation","current_user_flags","created_by","created_at_time"],"properties":{"created_at_time":{"$ref":"#\/components\/schemas\/created-at-time"},"activity_item":{"allOf":[{"$ref":"#\/components\/schemas\/unified-message-activity-item-typed-reference"}],"description":"Describes the activity item entity that references the chat message.\nIf the field is missing in a system message, it means the message is only for record-keeping and doesn’t require any user actions, such as marking it as read or showing a notification."},"route":{"$ref":"#\/components\/schemas\/chat-message-route"},"current_user_flags":{"description":"Current user's chat message flags.","type":"array","items":{"$ref":"#\/components\/schemas\/chat-message-flag"}},"created_by":{"$ref":"#\/components\/schemas\/chat-message-actor"},"conversation":{"allOf":[{"$ref":"#\/components\/schemas\/unified-conversation-id-typed-reference"}],"description":"Describes the conversation entity to which the chat message belongs."},"cursor":{"$ref":"#\/components\/schemas\/chat-message-cursor"}}},"knowledge-base":{"allOf":[{"$ref":"#\/components\/schemas\/knowledge-base-reference"},{"type":"object","properties":{"description":{"$ref":"#\/components\/schemas\/knowledge-base-description"}}}],"title":"KnowledgeBase"},"cursor-page-of-call-queue":{"allOf":[{"$ref":"#\/components\/schemas\/cursor-page"},{"required":["items"],"type":"object","properties":{"items":{"items":{"$ref":"#\/components\/schemas\/call-queue"},"type":"array"}}}],"title":"CursorPageOfCallQueue"},"messaging-enabled-phone-number-channel-sms-mms-provider-inteliquent":{"title":"MessagingEnabledPhoneNumberChannelSmsMmsProviderInteliquent","type":"object","required":["type"],"properties":{"type":{"enum":["inteliquent"],"type":"string"}}},"create-knowledge-base-command":{"title":"CreateKnowledgeBaseCommand","type":"object","required":["display_name"],"properties":{"display_name":{"$ref":"#\/components\/schemas\/knowledge-base-display-name"},"description":{"$ref":"#\/components\/schemas\/knowledge-base-description"}}},"messaging-enabled-phone-number-channel-sms-mms-provider":{"title":"MessagingEnabledPhoneNumberChannelSmsMmsProvider","discriminator":{"propertyName":"type","mapping":{"inteliquent":"#\/components\/schemas\/messaging-enabled-phone-number-channel-sms-mms-provider-inteliquent"}},"oneOf":[{"$ref":"#\/components\/schemas\/messaging-enabled-phone-number-channel-sms-mms-provider-inteliquent"}]},"knowledge-base-delete-in-use-error":{"allOf":[{"$ref":"#\/components\/schemas\/error"},{"required":["type"],"type":"object","properties":{"type":{"enum":["knowledge_base_delete_in_use_error"],"type":"string","nullable":false}}}],"example":{"type":"knowledge_base_delete_in_use_error","status_code":409,"message":"Knowledge Base cannot be deleted because it's in use by at least one Virtual Agent","trace_id":"00-a52d4f52df80574c92bcdedb9abba5b0-7f70c12f16a7c44d-00"},"title":"KnowledgeBaseDeleteInUseError"},"voice-conversation-template-id":{"allOf":[{"$ref":"#\/components\/schemas\/string-id"}],"description":"Unique identifier of the Voice Conversation Template.","example":"12345","title":"VoiceConversationTemplateId"},"messaging-enabled-phone-number-channel-sms-mms-messaging-direction":{"title":"MessagingEnabledPhoneNumberChannelSmsMmsMessagingDirection","description":"Indicates the messaging direction capability for this phone number on the sms_mms channel.\n* `inbound_only`: Only inbound SMS\/MMS messaging is enabled.\n* `two_way`: Both inbound and outbound SMS\/MMS messaging are enabled.","type":"string","enum":["inbound_only","two_way"]},"gupshup-integration-template-language":{"title":"GupshupIntegrationTemplateLanguage","description":"Language and locale code [supported by Meta](https:\/\/developers.facebook.com\/docs\/whatsapp\/business-management-api\/message-templates\/supported-languages). For example, `en_US` for United States.","type":"string","example":"en_US"},"message-delivery-acknowledgment-failure-reason":{"title":"MessageDeliveryAcknowledgmentFailureReason","description":"Message delivery failure reason.","type":"string","example":"Something was going wrong","nullable":true},"knowledge-base-delete-error":{"title":"KnowledgeBaseDeleteError","discriminator":{"propertyName":"type","mapping":{"knowledge_base_delete_in_use_error":"#\/components\/schemas\/knowledge-base-delete-in-use-error"}},"type":"object","required":["type"],"oneOf":[{"$ref":"#\/components\/schemas\/knowledge-base-delete-in-use-error"}],"properties":{"type":{"type":"string"}}},"message-delivery-acknowledgment-type-pending":{"title":"MessageDeliveryAcknowledgmentTypePending","type":"object","properties":{"type":{"$ref":"#\/components\/schemas\/message-delivery-acknowledgment-type"}}},"call-recorded-event":{"allOf":[{"required":["user","event"],"type":"object","properties":{"user":{"allOf":[{"$ref":"#\/components\/schemas\/webhook-target-user"}],"description":"The user whose call has been recorded."},"event":{"enum":["call_recorded"],"type":"string"}}},{"$ref":"#\/components\/schemas\/call-webhook-event"},{"$ref":"#\/components\/schemas\/call-webhook-event-audio-fields"}],"title":"CallRecordedEvent"}},"examples":{"sms-to-department":{"summary":"SMS from external phone number to a phone number assigned to a Department.","value":{"timestamp":"2021-09-17T09:02:45.78Z","id":"44a2f437-58da-4dd0-8204-cf5e000eb659","messenger_info":{"conversation_id":"6144597d471db5000112c877","originated":"15307636905","terminated":"15168560339","target":"department","from_user_id":"61435642343f430001253bfc","type":"SMS","content":"Hello, there!","message_id":"614459b5471db5000112c87d","origin":"external"},"user":{"department":"Marketing","account_id":1,"department_id":2},"event":"message_received"}},"c2c-call-answered":{"summary":"Click to Call answered by a user.","value":{"originating_number":"+19739331434","dialed_number":"+15162890533","call_source":"click2call","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"name":"Jane Doe","account_id":42,"id":1},"call_id":"03f592fc18f3efbf688eb059703a4e10","timestamp":"2021-11-10T11:33:38.85Z","event":"call_answered","user_name":"Jane Doe","direction":"outbound","id":"9780e8d6-81a5-43a7-8a70-af6935d49bc5"}},"normal-call-blind-transfer":{"summary":"Blind transfer a normal call to another user","value":{"originating_number":"+19739331434","user_name":"Jane Doe","call_source":"normal","user":{"name":"Jane Doe","account_id":42,"id":1},"call_id":"b37b0f94710e756f7ba2bf529eedbf64","timestamp":"2021-11-16T04:53:26.86Z","event":"call_blind_transfer","dialed_number":"+15162890533","direction":"inbound","id":"6ba4acac-8298-4bc7-a6c4-eb6d6dbe1707"}},"whatsapp-media-to-user":{"summary":"WhatsApp media message from an external phone number to a phone number assigned to a User.","value":{"timestamp":"2021-09-17T09:10:03.67Z","id":"83b1fe7e-b29f-5dc7-a58d-d439cb7e0f81","messenger_info":{"conversation_id":"61445b1cf2f38a00015540c3","content_type":"image\/jpeg","originated":"15307636905","terminated":"15168660248","target":"user","from_user_id":"61435642343f430001253bfc","type":"WhatsAppMedia","content":"https:\/\/s3.amazonaws.com\/iqntmms02\/bh2IwkLwAGWXzzA9Brgt.jpeg","origin":"external","message_id":"61445b6b471db5000112c896","caption":"Look at the picture!"},"user":{"name":"John Doe","account_id":42,"id":1},"event":"message_received"}},"sequential-call-forwarding-settings":{"summary":"Set call forwarding settings with `sequential` ring strategy.","value":{"replace_original_caller_id":false,"forwarding_list":[{"target":"15307636905","rings_count":3},{"target":"202","rings_count":5}],"is_enabled":true,"ring_strategy":"sequential","call_screening_mode":"disabled","mode":"no_answer"}},"normal-call-hold":{"summary":"Hold an incoming call","value":{"originating_number":"201","dialed_number":"202","reason":"holder","user":{"name":"Jane Doe","account_id":42,"id":1},"event":"call_hold","call_id":"203a4f1e0a59e36b68cd85c508573893","timestamp":"2021-11-10T11:34:00.33Z","call_source":"normal","user_name":"Jane Doe","direction":"inbound","id":"cad01fc2-6e60-49a0-a353-4f9e0d81f1f2"}},"call-blocked-account-level":{"summary":"Number blocked at account level.","value":{"originating_number":"+17323856855","dialed_number":"+18622290803","call_source":"normal","user":{"account_id":42},"call_id":"e29d0da649fc861d302ce362471fcded","timestamp":"2021-11-08T11:43:32.41Z","event":"call_blocked","direction":"inbound","id":"95c2448f-b178-4114-8517-9b07cbecc566"}},"mms-from-user":{"summary":"MMS from a User to an external phone number.","value":{"timestamp":"2021-09-17T09:10:03.67Z","id":"73a0fe6e-a18e-4dc6-a47c-c328cb6d9f81","messenger_info":{"conversation_id":"61445b1cf2f38a00015540c2","originating_entity":{"type":"user","id":1},"type":"MMS","content":"Look at the picture!; https:\/\/s3.amazonaws.com\/iqntmms02\/bh2IwkLwAGWXzzA9Brgt.jpeg","message_id":"61445b6b471db5000112c895","originated":"15168660248","terminated":"15307636905"},"user":{"name":"John Doe","account_id":42,"id":1},"event":"message_sent"}},"c2c-call-hold":{"summary":"Hold a call received via Click to Call API","value":{"originating_number":"+14432528753","user_name":"Jane Doe","reason":"holdee","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"name":"Jane Doe","account_id":42,"id":1},"event":"call_hold","call_id":"203a4f1e0a59e36b68cd85c508573893","timestamp":"2021-11-10T11:34:04.29Z","dialed_number":"+14432528752","call_source":"click2call","direction":"outbound","id":"e36573e7-5065-4c64-b8bd-31a0ee37db43"}},"simultaneous-call-forwarding-settings":{"summary":"Set call forwarding settings with `simultaneous` ring strategy.","value":{"replace_original_caller_id":false,"forwarding_list":[{"target":"15307636905","rings_count":3},{"target":"202","rings_count":3}],"is_enabled":true,"ring_strategy":"simultaneous","call_screening_mode":"disabled","mode":"no_answer"}},"call-blocked-user-level":{"summary":"Number blocked at user level.","value":{"originating_number":"+17323856855","dialed_number":"+18622290803","call_source":"normal","user":{"name":"Jane Doe","account_id":42,"id":1},"call_id":"9bdb266d73f7c40f9458594fe1e18f68","timestamp":"2021-11-15T07:04:24.31Z","event":"call_blocked","direction":"inbound","id":"867f1b4e-ad1b-42a3-9356-dafd1f04d4ce"}},"sms-from-department":{"summary":"SMS sent by a User from a Department phone number.","value":{"timestamp":"2021-09-17T09:10:03.67Z","id":"51e8de4c-806c-4be4-835b-a216a9b4b8e7","messenger_info":{"conversation_id":"61445b1cf2f38a00015540c1","originating_entity":{"type":"department","id":2},"type":"SMS","content":"Your appointment is confirmed for tomorrow at 10am.","message_id":"61445b6b471db5000112c893","originated":"15168560339","terminated":"15307636905"},"user":{"name":"Jane Smith","account_id":1,"id":3},"event":"message_sent"}},"search-non-deleted-voicemails-by-user":{"summary":"Calls with non-deleted voicemails for a specific user.","value":{"limit":50,"filter":{"type":"and","terms":[{"left":"$.voicemail.owner.type","type":"eq","right":"user"},{"left":"$.voicemail.owner.id","type":"eq","right":"85"},{"left":"$.voicemail.status","type":"neq","right":"deleted"}]}}},"normal-call-busy":{"summary":"Call busy for a normal call","value":{"originating_number":"+14432528753","user_name":"Jane Doe","call_source":"normal","user":{"name":"Jane Doe","account_id":42,"id":1},"call_id":"a471d33e562b535b9ec530e1c0c3a5b2","timestamp":"2021-10-27T08:58:21.66Z","event":"call_busy","dialed_number":"+14432528752","direction":"outbound","id":"6ef98e35-2220-45d4-b76a-a8e15ba4ab3e"}},"normal-call-park":{"summary":"Park an incoming call","value":{"originating_number":"202","dialed_number":"201","call_source":"normal","user":{"name":"Jane Doe","account_id":42,"id":1},"slot":"2","call_id":"2c128ccfb3701444275543869f47db38","timestamp":"2021-11-10T11:42:11.98Z","event":"call_park","user_name":"Jane Doe","direction":"inbound","id":"62a42abf-a0dc-41a4-98a4-18e7ea29d2af"}},"whatsapp-message-from-user":{"summary":"WhatsApp text message from a User to an external phone number.","value":{"timestamp":"2021-09-17T09:10:03.67Z","id":"62f9ef5d-917d-5cf5-946c-b327ba5c9f70","messenger_info":{"conversation_id":"61445b1cf2f38a00015540c5","originating_entity":{"type":"user","id":1},"type":"WhatsAppText","content":"Your appointment is confirmed for tomorrow at 10am.","message_id":"61445b6b471db5000112c898","originated":"15168660248","terminated":"15307636905"},"user":{"name":"John Doe","account_id":42,"id":1},"event":"message_sent"}},"search-voicemails-by-user-or-departments":{"summary":"Calls with voicemails to a selected user or department inboxes.","value":{"filter":{"type":"or","terms":[{"type":"and","terms":[{"left":"$.voicemail.owner.type","type":"eq","right":"user"},{"left":"$.voicemail.owner.id","type":"eq","right":"25"}]},{"type":"and","terms":[{"left":"$.voicemail.owner.type","type":"eq","right":"department"},{"left":"$.voicemail.owner.id","type":"in","right":["10","20","30"]}]}]}}},"user-scoped-webhook-subscription-request":{"summary":"User-scoped webhook subscription.","value":{"display_name":"User-scoped Webhook for CRM","description":"Webhook for CRM integration for a specific user.","is_enabled":true,"platform":"pbx","endpoint_url":"https:\/\/yet-another-cool-crm.example.org","event_type_filter":{"include_all_current_and_future_event_types":false,"event_types":[{"id":"call_ringing"},{"id":"call_missed"},{"id":"call_completed"}]},"scope_filter":{"call_scope":"external","users":[{"id":"1"}]}}},"search-calls-with-call-recordings":{"summary":"Calls with available call recording audio.","value":{"filter":{"type":"or","terms":[{"type":"not","operand":{"left":"$.caller_call_recording.status","type":"in","right":["deleted",null]}},{"type":"not","operand":{"left":"$.callee_call_recording.status","type":"in","right":["deleted",null]}}]}}},"c2c-call-park":{"summary":"Park a call received via Click To Call API","value":{"originating_number":"+14432528753","dialed_number":"+14432528752","call_source":"click2call","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"name":"Jane Doe","account_id":42,"id":1},"slot":"1","call_id":"ce3ba63d662ff8f9455da9f954f3b472","timestamp":"2021-10-27T09:04:26.00Z","event":"call_park","user_name":"Jane Doe","direction":"outbound","id":"5b436870-44c1-4d81-be07-5e1902c4d153"}},"c2c-call-busy":{"summary":"Call busy for a click to call","value":{"originating_number":"+14432528753","dialed_number":"+14432528752","call_source":"click2call","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"name":"Jane Doe","account_id":42,"id":1},"call_id":"a471d33e562b535b9ec530e1c0c3a5b2","timestamp":"2021-10-27T08:58:21.66Z","event":"call_busy","user_name":"Jane Doe","direction":"outbound","id":"6ef98e35-2220-45d4-b76a-a8e15ba4ab3e"}},"whatsapp-text-template-from-user":{"summary":"WhatsApp text template message from a User to an external phone number.","value":{"timestamp":"2021-09-17T09:10:03.67Z","id":"84b1ef7e-c29f-4ea3-b58d-d439cb7e0f92","messenger_info":{"conversation_id":"61445b1cf2f38a00015540c4","originating_entity":{"type":"user","id":1},"originated":"15168660248","template_id":"add4b8f1-648e-436c-a989-b50ea9f68498","type":"WhatsAppTextTemplate","content":" ","terminated":"15307636905","message_id":"61445b6b471db5000112c896","content_parts":{"body":"Hello John, your order #12345 is ready for pickup.","header":"Order Update","buttons":[{"text":"Pay now","type":"url"},{"text":"Call me back","type":"quick_reply"}],"footer":"Reply STOP to Unsubscribe"}},"user":{"name":"John Doe","account_id":42,"id":1},"event":"message_sent"}},"search-non-deleted-call-recordings-by-user":{"summary":"Calls with non-deleted call recordings from a specific user.","value":{"filter":{"type":"and","terms":[{"left":"$.caller.user.id","type":"eq","right":"85"},{"type":"not","operand":{"left":"$.caller_call_recording.status","type":"in","right":["deleted",null]}}]},"limit":50}},"c2c-call-completed":{"summary":"Click to call completed for an answered call by user","value":{"originating_number":"+14432528753","user_name":"Jane Doe","call_source":"click2call","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"account_id":42,"name":"Jane Doe","email":"john.doe@example.com","id":1},"event":"call_completed","call_id":"203a4f1e0a59e36b68cd85c508573893","timestamp":"2021-11-10T11:34:04.47Z","duration":49,"dialed_number":"+14432528752","direction":"outbound","id":"82101034-6050-4e78-a813-70a58beeab25"}},"search-unread-call-recordings":{"summary":"Calls with unread call recording.","value":{"filter":{"type":"or","terms":[{"left":"$.caller_call_recording.status","type":"eq","right":"unread"},{"left":"$.callee_call_recording.status","type":"eq","right":"unread"}]}}},"search-outbound-calls":{"summary":"Outbound calls only.","value":{"filter":{"left":"$.direction","type":"eq","right":"outbound"}}},"c2c-call-pickup":{"summary":"Pickup a Click to Call ringing on another user","value":{"originating_number":"+14432528752","dialed_number":"*97203","call_source":"click2call","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"name":"Jane Doe","account_id":42,"id":1},"event":"call_pickup","call_id":"a471d33e562b535b9ec530e1c0c3a5b2","timestamp":"2021-10-27T08:58:21.66Z","id":"6ef98e35-2220-45d4-b76a-a8e15ba4ab3e","user_name":"Jane Doe","direction":"outbound","pickup_event_info":{"name":"John Doe","extension":"203","id":2}}},"click-to-call-result":{"summary":"Summary of a call triggered by the click-to-call flow","value":{"originating_number":"15163448359","dialed_number":"14432528752","call_source":"click2call","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"account_id":42,"id":123},"event":"c2c_call_result","call_id":"203a4f1e0a59e36b68cd85c508573893","timestamp":"2022-02-10T13:11:02.469Z","outcome":"answered","reason":"c2c_call_completed","direction":"inbound","id":"82101034-6050-4e78-a813-70a58beeab25"}},"search-calls-between-specific-users":{"summary":"Calls between specific users.","value":{"filter":{"type":"and","terms":[{"left":"$.caller.user.id","type":"in","right":["10","20"]},{"left":"$.callee.user.id","type":"in","right":["10","20"]}]}}},"search-answered-calls":{"summary":"Answered calls.","value":{"filter":{"left":"$.result","type":"eq","right":"answered"}}},"normal-voicemail-missed":{"summary":"A voicemail has been missed for a user for an incoming call","value":{"originating_number":"201","user_name":"Jane Doe","reason":"caller_hungup","user":{"name":"Jane Doe","account_id":42,"id":1},"event":"voicemail_missed","call_source":"normal","call_id":"3f88a536581fd8fd44a3ab7774565da5","timestamp":"2021-11-10T13:56:08.19Z","duration":0,"dialed_number":"202","direction":"inbound","id":"616ffa61-3f82-4b05-97ed-7301943fd439"}},"search-calls-to-department":{"summary":"Search calls to a specific department","value":{"filter":{"left":"$.route.department.id","type":"eq","right":"150"}}},"c2c-call-recorded":{"summary":"Click to call recorded","value":{"originating_number":"+14432528753","dialed_number":"+14432528752","call_source":"click2call","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"name":"Jane Doe","account_id":42,"id":1},"audio_message_url":"https:\/\/app.net2phone.com\/api\/call-record\/89011","event":"call_recorded","call_id":"a471d33e562b535b9ec530e1c0c3a5b2","timestamp":"2021-10-27T08:58:21.66Z","audio_message_id":89011,"user_name":"Jane Doe","direction":"outbound","id":"6ef98e35-2220-45d4-b76a-a8e15ba4ab3e"}},"c2c-call-consultative-transfer":{"summary":"Call consultative transfer by a user for a click to call","value":{"originating_number":"+14432528753","user_name":"Jane Doe","reason":"transferee","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"name":"Jane Doe","account_id":42,"id":1},"event":"call_consultative_transfer","call_id":"203a4f1e0a59e36b68cd85c508573893","timestamp":"2021-11-10T11:33:46.72Z","dialed_number":"+14432528752","call_source":"click2call","direction":"outbound","id":"e03f1cc8-0201-46db-a9c4-8bae2e31a9a8"}},"search-calls-to-call-queue":{"summary":"Search calls to a specific call queue","value":{"filter":{"left":"$.route.call_queue.id","type":"eq","right":"150"}}},"c2c-call-recording-failed":{"summary":"Call recording failed for a click to call","value":{"originating_number":"+14432528753","user_name":"Jane Doe","reason":"maxCallRecordings","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"name":"Jane Doe","account_id":42,"id":1},"event":"call_recording_failed","call_id":"a471d33e562b535b9ec530e1c0c3a5b2","timestamp":"2021-10-27T08:58:21.66Z","dialed_number":"+14432528752","call_source":"click2call","direction":"outbound","id":"6ef98e35-2220-45d4-b76a-a8e15ba4ab3e"}},"search-calls-made-by-me":{"summary":"Calls made by me.","value":{"filter":{"left":"$.caller.user.id","type":"eq","right":{"type":"var","id":"my_user_id"}}}},"normal-call-resume":{"summary":"Resume a normal incoming call","value":{"originating_number":"202","hold_duration":22,"user_name":"Jane Doe","reason":"resumer","user":{"name":"Jane Doe","account_id":42,"id":1},"event":"call_resume","call_id":"203a4f1e0a59e36b68cd85c508573893","timestamp":"2021-11-10T11:33:46.72Z","dialed_number":"201","call_source":"normal","direction":"inbound","id":"e03f1cc8-0201-46db-a9c4-8bae2e31a9a8"}},"voicemail-notify":{"summary":"A user has reached a voicemail service","value":{"originating_number":"202","dialed_number":"*95","voicemail":true,"call_source":"normal","user":{"name":"Jane Doe","account_id":42,"id":1},"call_id":"ba6460d2947609bfadce98d28bc7ff4f","timestamp":"2021-11-10T12:12:48.09Z","event":"voicemail_notify","user_name":"Jane Doe","direction":"outbound","id":"d42b5f92-10b8-439c-8caa-f3832fdb737a"}},"search-calls-to-my-departments":{"summary":"Calls to my departments.","value":{"filter":{"left":"$.route.department.id","type":"in","right":{"type":"var","id":"my_department_ids"}}}},"c2c-call-forward":{"summary":"Forward a click to call to an external number","value":{"originating_number":"+14432528753","dialed_number":"+14432528752","call_source":"click2call","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"name":"Jane Doe","account_id":42,"id":1},"event":"call_forward","call_id":"ce3ba63d662ff8f9455da9f954f3b472","timestamp":"2021-10-27T09:12:32.00Z","forward_number":"+14432528853","user_name":"Jane Doe","direction":"outbound","id":"5b436870-44c1-4d81-be07-5e1902c4d153"}},"normal-call-rg-queue-completed":{"summary":"A call in a ring group is completed","value":{"originating_number":"201","dialed_number":"401","call_source":"normal","user":{"account_id":42},"call_id":"9bdb266d73f7c40f9458594fe1e18f68","timestamp":"2021-11-15T07:04:24.31Z","event":"call_rg_queue_completed","direction":"inbound","id":"867f1b4e-ad1b-42a3-9356-dafd1f04d4ce"}},"search-calls-from-or-to-phone-number-starts-with":{"summary":"Calls from or to a specific number (starts with).","value":{"filter":{"left":"$.to","type":"string_starts_with","right":"410"}}},"normal-voicemail-received":{"summary":"A voice mail has been received by a user","value":{"originating_number":"201","dialed_number":"202","voicemail":true,"call_source":"normal","audio_message_id":3903,"user":{"name":"Jane Doe","account_id":42,"id":1},"audio_message_url":"https:\/\/app.net2phone.com\/api\/voice-mail\/3903","event":"voicemail_received","call_id":"ce3ba63d662ff8f9455da9f954f3b472","timestamp":"2021-10-27T09:04:26.00Z","duration":10,"user_name":"Jane Doe","direction":"inbound","id":"5b436870-44c1-4d81-be07-5e1902c4d153"}},"c2c-call-rg-queue-completed":{"summary":"A click to call in a ring group is completed","value":{"originating_number":"+14432528753","dialed_number":"+14432528752","call_source":"click2call","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"account_id":42},"call_id":"203a4f1e0a59e36b68cd85c508573893","timestamp":"2021-11-10T11:33:46.72Z","event":"call_rg_queue_completed","direction":"outbound","id":"e03f1cc8-0201-46db-a9c4-8bae2e31a9a8"}},"normal-call-consultative-transfer":{"summary":"Call consultative transfer by a user for a normal call","value":{"originating_number":"202","dialed_number":"201","reason":"transferer","user":{"name":"Jane Doe","account_id":42,"id":1},"event":"call_consultative_transfer","call_id":"203a4f1e0a59e36b68cd85c508573893","timestamp":"2021-11-10T11:34:04.47Z","call_source":"normal","user_name":"Jane Doe","direction":"inbound","id":"697e3414-91aa-47a3-804b-bf415b568c36"}},"normal-call-rg-queue-entered":{"summary":"A normal call entered in a ring group calls queue","value":{"originating_number":"+14432528753","dialed_number":"+14432528752","call_source":"click2call","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"account_id":42},"call_id":"2c128ccfb3701444275543869f47db38","timestamp":"2021-11-10T11:44:22.24Z","event":"call_rg_queue_entered","direction":"outbound","id":"588ef887-9e2e-453b-80ac-3629b9d54fe4"}},"whatsapp-to-user":{"summary":"WhatsApp text message from an external phone number to a phone number assigned to a User.","value":{"timestamp":"2021-09-17T09:10:03.67Z","id":"62f9ef5d-917d-5cf5-946c-b327ba5c9f70","messenger_info":{"conversation_id":"61445b1cf2f38a00015540c3","originated":"15307636905","terminated":"15168660248","target":"user","from_user_id":"61435642343f430001253bfc","type":"WhatsAppText","content":"Hello, I have a question about my order.","message_id":"61445b6b471db5000112c894","origin":"external"},"user":{"name":"John Doe","account_id":42,"id":1},"event":"message_received"}},"c2c-voicemail-received":{"summary":"A voicemail has been received for a department from a click to call","value":{"originating_number":"+19739331434","dialed_number":"+14432528754","voicemail":true,"call_source":"click2call","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"517d7f6e-400655b760aea219"},"user":{"account_id":42},"audio_message_url":"https:\/\/app.net2phone.com\/api\/voice-mail\/3907","event":"voicemail_received","call_id":"203a4f1e0a59e36b68cd85c508573893","timestamp":"2021-11-10T11:34:04.47Z","duration":12,"audio_message_id":3907,"direction":"outbound","id":"697e3414-91aa-47a3-804b-bf415b568c36"}},"search-calls-from-normalized-or-to-normalized-phone-number-contains-substring":{"summary":"Calls from or to specific number (partial match).","value":{"filter":{"left":"$.to_normalized.id","type":"string_contains","right":"+14155552671"}}},"sip-trunk-search-calls-with-to-or-from-number-partial":{"summary":"Calls from or to specific number (partial match)","value":{"filter":{"type":"or","terms":[{"left":"$.from","type":"string_starts_with","right":"+12349"},{"left":"$.to","type":"string_starts_with","right":"+12349"}]}}},"c2c-call-rg-queue-entered":{"summary":"A click to call entered in a ring group calls queue","value":{"originating_number":"201","dialed_number":"401","call_source":"normal","user":{"account_id":42},"call_id":"9bdb266d73f7c40f9458594fe1e18f68","timestamp":"2021-11-15T07:04:21.56Z","event":"call_rg_queue_entered","direction":"inbound","id":"f0912a49-a86d-4203-9532-d4097fd74734"}},"ai-agent-conversation-ended":{"summary":"AI Agent Conversation Ended","value":{"transferred_to":null,"transcript_url":{"expires_at_time":"2026-05-06T14:05:31Z","url":"https:\/\/example.com\/transcript\/098765432109876543210987.json?X-Amz-Signature=example"},"recording_url":{"expires_at_time":"2026-05-06T14:05:31Z","url":"https:\/\/example.com\/recording\/098765432109876543210987.wav?X-Amz-Signature=example"},"messaging_channel":null,"billing_tiers":["premium"],"ai_model_tiers":["premium"],"total_credits":10,"call_duration_seconds":330,"post_conversation_tasks":{"summary":{"finished_at_time":"2026-05-06T12:05:35Z","status":"completed"}},"id":"evt_7f3a1c2d4e5b6a7c","conversation_id":"098765432109876543210987","call_started_at_time":"2026-05-06T12:00:00Z","created_at_time":"2026-05-06T10:05:30Z","virtual_agent":{"name":"Support Bot","id":"507f1f77bcf86cd799439011"},"to":"+15559876543","voices":[{"name":"Rachel","language":"en-US","tier":"standard"}],"ended_reason":"normal","call_ended_at_time":"2026-05-06T12:05:30Z","summary":{"resolution":"Resolved without escalation.","reason_for_conversation":"Customer inquired about their account balance.","customer_sentiment":"neutral","key_points":"Account balance confirmed, no outstanding issues."},"last_activity_time":"2026-05-06T12:05:00Z","type":"inbound_voice","ended_at_time":"2026-05-06T12:05:30Z","timestamp":"2026-05-06T12:05:31Z","from":"+15551234567","user_message_count":5,"event":"ai_agent_conversation_ended"}},"search-calls-by-specific-users":{"summary":"Calls associated with specific users","description":"Search for all call detail records where specific users participated as either a caller, a callee.","value":{"limit":20,"owners":[{"type":"user","id":"123"},{"type":"user","id":"456"}]}},"c2c-call-resume":{"summary":"Resume click to call","value":{"originating_number":"+14432528753","hold_duration":7,"user_name":"Jane Doe","reason":"resumer","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"name":"Jane Doe","account_id":42,"id":1},"event":"call_resume","call_id":"2c128ccfb3701444275543869f47db38","timestamp":"2021-11-10T11:42:11.98Z","dialed_number":"+14432528752","call_source":"click2call","direction":"outbound","id":"62a42abf-a0dc-41a4-98a4-18e7ea29d2af"}},"normal-call-rg-queue-tier":{"summary":"Normal call sent to a user in a ring group tier","value":{"originating_number":"201","dialed_number":"401","call_source":"normal","user":{"account_id":42},"call_id":"9bdb266d73f7c40f9458594fe1e18f68","timestamp":"2021-11-15T07:04:22.63Z","event":"call_rg_queue_tier","direction":"inbound","id":"4e528d63-0885-4bb7-acbb-489e30b8e64e"}},"sip-trunk-search-calls-between-two-dates":{"summary":"Calls within the given time range.","value":{"filter":{"type":"and","terms":[{"left":"$.start_time","type":"gte","right":"2023-07-16T19:00:00Z"},{"left":"$.start_time","type":"lte","right":"2023-07-21T19:00:00Z"}]}}},"search-calls-by-specific-departments":{"summary":"Calls associated with specific departments.","description":"Search for all call detail records routed to or involving specific departments.","value":{"limit":20,"owners":[{"type":"department","id":"10"},{"type":"department","id":"20"}]}},"normal-call-pickup":{"summary":"Pickup a call ringing on another user device","value":{"originating_number":"+14432528752","dialed_number":"*97203","call_source":"normal","user":{"name":"Jane Doe","account_id":42,"id":1},"event":"call_pickup","call_id":"589c9ee2b48f83c512db3cbb2d69b3aa","timestamp":"2021-11-10T13:19:57.77Z","pickup_event_info":{"name":"John Doe","extension":"203","id":2},"user_name":"Jane Doe","direction":"inbound","id":"bd19d322-17d1-4489-bf43-ec26cfe5d7de"}},"normal-call-completed":{"summary":"Normal call completed for an unanswered call by a user","value":{"originating_number":"202","user_name":"Jane Doe","call_source":"normal","user":{"name":"Jane Doe","account_id":42,"id":1},"event":"call_completed","call_id":"a471d33e562b535b9ec530e1c0c3a5b2","timestamp":"2021-10-27T08:58:21.66Z","duration":0,"dialed_number":"201","direction":"inbound","id":"2836c843-96e6-4f3a-9c04-69bb0b10febf"}},"c2c-call-rg-queue-tier":{"summary":"A click to call in a ring group sent to a user in it's tier","value":{"originating_number":"+14432528753","dialed_number":"+14432528752","call_source":"click2call","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"account_id":42},"call_id":"03f592fc18f3efbf688eb059703a4e10","timestamp":"2021-11-10T11:33:25.58Z","event":"call_rg_queue_tier","direction":"outbound","id":"42c5262d-a93e-4d74-ad26-d7b4d16a5285"}},"search-calls-with-voicemail-audio":{"summary":"Calls with available voicemail audio.","value":{"filter":{"type":"not","operand":{"left":"$.voicemail.status","type":"in","right":["deleted",null]}}}},"ai-agent-scoped-webhook-subscription-request":{"summary":"Virtual Agent-scoped webhook subscription (ai_agent).","value":{"display_name":"AI Agent Conversation Webhook","description":"Receives ai_agent_conversation_ended events for specific Virtual Agents.","is_enabled":true,"platform":"ai_agent","endpoint_url":"https:\/\/example.org\/webhooks\/ai-agent","event_type_filter":{"include_all_current_and_future_event_types":false,"event_types":[{"id":"ai_agent_conversation_ended"}]},"scope_filter":{"virtual_agents":[{"id":"507f1f77bcf86cd799439011"},{"id":"507f1f77bcf86cd799439012"}]}}},"search-missed-calls-by-specific-user":{"summary":"Missed calls for a specific user.","description":"Search for all unanswered call detail records of specific user.","value":{"limit":20,"owners":[{"type":"user","id":"123"}],"filter":{"left":"$.result","type":"eq","right":"not_answered"}}},"normal-call-ringing":{"summary":"A call is ringing for a user","value":{"originating_number":"201","user_name":"Jane Doe","call_source":"normal","user":{"name":"Jane Doe","account_id":42,"id":1},"call_id":"ce3ba63d662ff8f9455da9f954f3b472","timestamp":"2021-10-27T09:04:01.24Z","event":"call_ringing","dialed_number":"202","direction":"outbound","id":"b1c31602-f0a1-4022-920b-038ee4c4f3d9"}},"c2c-blind-transfer":{"summary":"Blind transfer a call (triggered via click to cal API) to another user\/department\/ring group\/welcome menu.","value":{"originating_number":"+19739331434","dialed_number":"+15162890533","call_source":"click2call","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"name":"Jane Doe","account_id":42,"id":1},"call_id":"3b4ddffc082daed9ed0c055850b4a23e","timestamp":"2021-11-16T01:28:55.65Z","event":"call_blind_transfer","direction":"outbound","id":"0ae648e6-7fbe-44ec-9289-f85c4f54c445"}},"ai-agent-conversation-summary-finished":{"summary":"AI Agent Conversation Summary Finished","value":{"conversation_id":"098765432109876543210987","transferred_to":null,"virtual_agent":{"name":"Support Bot","id":"507f1f77bcf86cd799439011"},"post_conversation_tasks":{"summary":{"finished_at_time":"2026-09-08T12:00:20Z","status":"completed"}},"messaging_channel":null,"ended_reason":"normal","event":"ai_agent_conversation_summary_finished","summary":{"resolution":"Resolved without escalation.","reason_for_conversation":"Customer inquired about their account balance.","customer_sentiment":"neutral","key_points":"Account balance confirmed, no outstanding issues."},"timestamp":"2026-09-08T12:00:20Z","type":"inbound_voice","ended_at_time":"2026-09-08T12:00:00Z","to":"+15559876543","from":"+15551234567","created_at_time":"2026-09-08T11:55:00Z","id":"evt_8b4c2d3e5f6a7b8c"}},"search-non-deleted-voicemails-by-owner-user":{"summary":"Calls with non-deleted voicemails for a specific user.","description":"Search for all call detail records with non-deleted voicemails for a specific user.","value":{"limit":20,"owners":[{"type":"user","id":"123"}],"filter":{"type":"not","operand":{"left":"$.voicemail.status","type":"eq","right":"deleted"}}}},"c2c-call-ringing":{"summary":"A click to call is ringing on a user","value":{"originating_number":"+14432528753","dialed_number":"+14432528752","call_source":"click2call","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"name":"Jane Doe","account_id":42,"id":1},"call_id":"a471d33e562b535b9ec530e1c0c3a5b2","timestamp":"2021-10-27T08:58:21.66Z","event":"call_ringing","user_name":"Jane Doe","direction":"outbound","id":"6ef98e35-2220-45d4-b76a-a8e15ba4ab3e"}},"search-unread-voicemails":{"summary":"Calls with unread voicemails.","value":{"filter":{"left":"$.voicemail.status","type":"eq","right":"unread"}}},"normal-call-unpark":{"summary":"Unpark an incoming call","value":{"originating_number":"202","dialed_number":"201","call_source":"normal","user":{"name":"Jane Doe","account_id":42,"id":1},"slot":"1","call_id":"2c128ccfb3701444275543869f47db38","timestamp":"2021-11-10T11:44:22.24Z","event":"call_unpark","user_name":"Jane Doe","direction":"inbound","id":"588ef887-9e2e-453b-80ac-3629b9d54fe4"}},"search-calls-from-or-to-phone-number-contains-substring":{"summary":"Calls from or to specific number (partial match).","value":{"filter":{"left":"$.to","type":"string_contains","right":"410"}}},"user-scoped-webhook-subscription-response":{"summary":"User-scoped webhook subscription.","value":{"secret":{"secret_value":"oMekrSUoBkHTh3fv7p3AKytkQqFBgrQW","webhook_subscription_id":"1"},"description":"Webhook for CRM integration for a specific user.","created_by":{"id":"1","avatar":{"avatar_images":[{"size_pixels":400,"url":"https:\/\/n2p-messaging-prod-storage.s3.us-east-1.amazonaws.com\/6082ce5e436acf00018faf27-1619430611421-200px.jpg","kind":"original"}],"user_id":"1"},"role":{"display_name":"Regular User","id":"regular"},"last_name":"Doe","is_deleted":false,"first_name":"John","email":"john.doe@example.com"},"platform":"pbx","updated_at_time":null,"created_at_time":"2019-08-24T14:15:22Z","event_type_filter":{"include_all_current_and_future_event_types":false,"event_types":[{"display_name":"Call Ringing","id":"call_ringing"},{"display_name":"Call Missed","id":"call_missed"},{"display_name":"Call Completed","id":"call_completed"}]},"scope_filter":{"call_scope":"external","users":[{"id":"1","avatar":{"avatar_images":[{"size_pixels":400,"url":"https:\/\/n2p-messaging-prod-storage.s3.us-east-1.amazonaws.com\/6082ce5e436acf00018faf27-1619430611421-200px.jpg","kind":"original"}],"user_id":"1"},"role":{"display_name":"Regular User","id":"regular"},"last_name":"Doe","is_deleted":false,"first_name":"John","email":"john.doe@example.com"}]},"updated_by":null,"updated_by_user":null,"owner_type":"user","is_enabled":true,"display_name":"User-scoped Webhook for CRM","created_by_user":"1","endpoint_url":"https:\/\/yet-another-cool-crm.example.org","id":"1"}},"c2c-call-unpark":{"summary":"Unpark a parked click to call","value":{"originating_number":"+14432528753","dialed_number":"+14432528752","call_source":"click2call","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"name":"Jane Doe","account_id":42,"id":1},"slot":"1","call_id":"203a4f1e0a59e36b68cd85c508573893","timestamp":"2021-11-10T11:34:00.33Z","event":"call_unpark","user_name":"Jane Doe","direction":"outbound","id":"cad01fc2-6e60-49a0-a353-4f9e0d81f1f2"}},"search-calls-by-specific-users-and-departments":{"summary":"Calls associated with specific users or departments.","description":"Search for all call detail records that belong to either a specific user or specific departments. This is useful for building combined views (e.g., \"My Calls\" + \"My Departments' Calls\").","value":{"limit":20,"owners":[{"type":"user","id":"123"},{"type":"department","id":"10"},{"type":"department","id":"20"}]}},"emergency-call":{"summary":"A user has reached an emergency service","value":{"originating_number":"201","user_name":"Jane Doe","call_source":"normal","user":{"name":"Jane Doe","account_id":42,"id":1},"call_id":"ce3ba63d662ff8f9455da9f954f3b472","timestamp":"2021-10-27T09:04:03.25Z","event":"emergency_call","dialed_number":"911","direction":"outbound","id":"c528e4c5-9c83-49c3-9989-e463c0919e44"}},"sip-trunk-search-calls-order-ascending":{"summary":"Calls ordered by `start_time` ascending","value":{"sort":[{"direction":"asc","by":"$.start_time"}]}},"normal-call-missed":{"summary":"Call missed by a user who did not answer","value":{"originating_number":"201","user_name":"Jane Doe","reason":"user_did_not_answer","user":{"name":"Jane Doe","account_id":42,"id":1},"event":"call_missed","call_source":"normal","call_id":"3b4ddffc082daed9ed0c055850b4a23e","timestamp":"2021-11-16T01:28:55.65Z","duration":0,"dialed_number":"202","direction":"inbound","id":"0ae648e6-7fbe-44ec-9289-f85c4f54c445"}},"normal-call-recorded":{"summary":"Call recorded for an incoming call","value":{"originating_number":"202","dialed_number":"201","call_source":"normal","audio_message_id":89007,"user":{"name":"Jane Doe","account_id":42,"id":1},"audio_message_url":"https:\/\/app.net2phone.com\/api\/call-record\/89007","call_id":"203a4f1e0a59e36b68cd85c508573893","timestamp":"2021-11-10T11:34:04.29Z","event":"call_recorded","user_name":"Jane Doe","direction":"inbound","id":"e36573e7-5065-4c64-b8bd-31a0ee37db43"}},"user":{"summary":"A regular user","value":{"id":"1","avatar":{"avatar_images":[{"size_pixels":120,"url":"https:\/\/n2p-messaging-prod-storage.s3.us-east-1.amazonaws.com\/606b0115e42d950001d25230-1630558234076-120px.jpg","kind":"resized"},{"size_pixels":200,"url":"https:\/\/n2p-messaging-prod-storage.s3.us-east-1.amazonaws.com\/606b0115e42d950001d25230-1630558234076-200px.jpg","kind":"resized"},{"size_pixels":224,"url":"https:\/\/n2p-messaging-prod-storage.s3.us-east-1.amazonaws.com\/606b0115e42d950001d25230-1630558234076-224px.jpg","kind":"resized"},{"size_pixels":400,"url":"https:\/\/n2p-messaging-prod-storage.s3.us-east-1.amazonaws.com\/606b0115e42d950001d25230-1630558234076-400px.jpg","kind":"resized"},{"url":"https:\/\/n2p-messaging-prod-storage.s3.us-east-1.amazonaws.com\/606b0115e42d950001d25230-1630558234076.jpg","kind":"original"}],"user_id":"1"},"role":{"display_name":"Regular User","id":"regular"},"last_name":"Doe","is_deleted":false,"first_name":"Jane","email":"jane.doe@example.com"}},"ai-agent-conversation-summary-failed":{"summary":"AI Agent Conversation Summary Failed","value":{"conversation_id":"098765432109876543210988","transferred_to":null,"virtual_agent":{"name":"Support Bot","id":"507f1f77bcf86cd799439011"},"post_conversation_tasks":{"summary":{"finished_at_time":"2026-09-08T12:00:20Z","status":"failed"}},"messaging_channel":null,"ended_reason":"normal","event":"ai_agent_conversation_summary_finished","summary":null,"timestamp":"2026-09-08T12:00:20Z","type":"inbound_voice","ended_at_time":"2026-09-08T12:00:00Z","to":"+15559876543","from":"+15551234567","created_at_time":"2026-09-08T11:55:00Z","id":"evt_9c5d3e4f6a7b8c9d"}},"mms-to-user":{"summary":"MMS from external phone number to a phone number assigned to a User.","value":{"timestamp":"2021-09-17T09:10:03.67Z","id":"41e8de4c-806c-4be4-835b-a216a9b4b8e6","messenger_info":{"conversation_id":"61445b1cf2f38a00015540c1","originated":"15307636905","terminated":"15168660248","target":"user","from_user_id":"61435642343f430001253bfc","type":"MMS","content":"Look at the picture!; https:\/\/s3.amazonaws.com\/iqntmms02\/bh2IwkLwAGWXzzA9Brgt.jpeg","message_id":"61445b6b471db5000112c892","origin":"external"},"user":{"name":"John Doe","account_id":42,"id":1},"event":"message_received"}},"ai-agent-scoped-webhook-subscription-response":{"summary":"Virtual Agent-scoped webhook subscription (ai_agent).","value":{"secret":{"secret_value":"oMekrSUoBkHTh3fv7p3AKytkQqFBgrQW","webhook_subscription_id":"42"},"description":"Receives ai_agent_conversation_ended events for specific Virtual Agents.","created_by":null,"platform":"ai_agent","updated_at_time":null,"created_at_time":"2026-05-06T10:05:30Z","event_type_filter":{"include_all_current_and_future_event_types":false,"event_types":[{"display_name":"AI Agent - Conversation Ended","id":"ai_agent_conversation_ended"}]},"scope_filter":{"virtual_agents":[{"id":"507f1f77bcf86cd799439011"},{"id":"507f1f77bcf86cd799439012"}]},"updated_by":null,"updated_by_user":null,"owner_type":"account","is_enabled":true,"display_name":"AI Agent Conversation Webhook","created_by_user":null,"endpoint_url":"https:\/\/example.org\/webhooks\/ai-agent","id":"42"}},"normal-call-answered":{"summary":"Normal call answered by a user.","value":{"originating_number":"2011","user_name":"Jane Doe","call_source":"normal","user":{"name":"Jane Doe","account_id":42,"id":1},"call_id":"03f592fc18f3efbf688eb059703a4e10","timestamp":"2021-11-10T11:33:38.85Z","event":"call_answered","dialed_number":"2021","direction":"outbound","id":"9780e8d6-81a5-43a7-8a70-af6935d49bc5"}},"whatsapp-media-from-user":{"summary":"WhatsApp media message with caption from a User to an external phone number.","value":{"timestamp":"2021-09-17T09:10:03.67Z","id":"a3b2ce9f-d18e-4ea3-b58d-e539cb7e1f83","messenger_info":{"conversation_id":"61445b1cf2f38a00015540c5","originating_entity":{"type":"user","id":1},"content_type":"image\/jpeg","originated":"15168660248","terminated":"15307636905","type":"WhatsAppMedia","content":"https:\/\/s3.amazonaws.com\/iqntmms02\/bh2IwkLwAGWXzzA9Brgt.jpeg","message_id":"61445b6b471db5000112c899","caption":"Look at the picture!"},"user":{"name":"John Doe","account_id":42,"id":1},"event":"message_sent"}},"c2c-call-missed":{"summary":"Click to call missed by a user who is not logged in to the app","value":{"originating_number":"+14432528753","user_name":"Jane Doe","reason":"user_not_logged_in","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"4fe62e9-4a935b5eb4aeae47"},"user":{"name":"Jane Doe","account_id":42,"id":1},"event":"call_missed","call_source":"click2call","call_id":"a471d33e562b535b9ec530e1c0c3a5b2","timestamp":"2021-11-10T11:34:04.29Z","duration":0,"dialed_number":"+14432528752","direction":"outbound","id":"e36573e7-5065-4c64-b8bd-31a0ee37db43"}},"c2c-voicemail-missed":{"summary":"Voicemail missed by a user from a click to call","value":{"originating_number":"+19739331434","user_name":"Jane Doe","reason":"vm_disabled","click_to_call_info":{"c2c_client_id":"n2p-api","c2c_api_request_id":"517d7f6e-400655b760aea219"},"user":{"name":"Jane Doe","account_id":42,"id":1},"event":"voicemail_missed","call_source":"click2call","call_id":"fd436c083b16d6bde4be37892713ca23","timestamp":"2021-11-16T09:36:04.79Z","duration":0,"dialed_number":"+14432528754","direction":"inbound","id":"67393d05-c69c-4993-8b96-f0dfa658e0bd"}},"normal-call-forward":{"summary":"Forward an incoming call to another user","value":{"originating_number":"201","dialed_number":"202","call_source":"normal","forward_number":"203","event":"call_forward","call_id":"ce3ba63d662ff8f9455da9f954f3b472","timestamp":"2021-10-27T09:04:27.17Z","user":{"name":"Jane Doe","account_id":42,"id":1},"user_name":"Jane Doe","direction":"inbound","id":"e56b8ca2-47b6-44f1-8df4-42382d260855"}},"normal-call-recording-failed":{"summary":"Call recoding failed for an incoming call","value":{"originating_number":"201","dialed_number":"202","reason":"maxCallRecordings","user":{"name":"Jane Doe","account_id":42,"id":1},"event":"call_recording_failed","call_id":"589c9ee2b48f83c512db3cbb2d69b3aa","timestamp":"2021-11-10T13:19:57.77Z","call_source":"normal","user_name":"Jane Doe","direction":"inbound","id":"bd19d322-17d1-4489-bf43-ec26cfe5d7de"}}},"securitySchemes":{"n2pOpenIdConnect":{"type":"openIdConnect","openIdConnectUrl":"https:\/\/auth.net2phone.com\/.well-known\/openid-configuration"},"n2pApiKeyAuth":{"name":"X-API-Key","type":"apiKey","in":"header"}},"callbacks":{"call-completed":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call completed","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a call (inbound\/outbound) is completed. Doesn't matter if the call is answered\/failed.","operationId":"NotifyCallCompleted","requestBody":{"content":{"application\/json":{"examples":{"C2CCallCompleted":{"$ref":"#\/components\/examples\/c2c-call-completed"},"NormalCallCompleted":{"$ref":"#\/components\/examples\/normal-call-completed"}},"schema":{"$ref":"#\/components\/schemas\/call-completed-event"}}}}}}},"call-rg-queue-entered":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call rg queue entered","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a call enters a ring group with call queue enabled.","operationId":"NotifyCallRgQueueEntered","requestBody":{"content":{"application\/json":{"examples":{"NormalCallRgQueueEntered":{"$ref":"#\/components\/examples\/normal-call-rg-queue-entered"},"C2CCallRgQueueEntered":{"$ref":"#\/components\/examples\/c2c-call-rg-queue-entered"}},"schema":{"$ref":"#\/components\/schemas\/call-rg-queue-entered-event"}}}}}}},"call-recording-failed":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call recording failed","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a call failed to record.","operationId":"NotifyCallRecordingFailed","requestBody":{"content":{"application\/json":{"examples":{"NormalCallRecordingFailed":{"$ref":"#\/components\/examples\/normal-call-recording-failed"},"C2CCallRecordingFailed":{"$ref":"#\/components\/examples\/c2c-call-recording-failed"}},"schema":{"$ref":"#\/components\/schemas\/call-recording-failed-event"}}}}}}},"call-missed":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call missed","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when an incoming call isn’t answered by a user in your net2phone account.","operationId":"NotifyCallMissed","requestBody":{"content":{"application\/json":{"examples":{"NormalCallMissed":{"$ref":"#\/components\/examples\/normal-call-missed"},"C2CCallMissed":{"$ref":"#\/components\/examples\/c2c-call-missed"}},"schema":{"$ref":"#\/components\/schemas\/call-missed-event"}}}}}}},"call-recording-analytics-results":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call recording analytics results","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when the analysis on a call recording is completed or failed.","operationId":"NotifyCallRecordingAnalyticsResults","requestBody":{"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/call-recording-analytics-results-event"}}}}}}},"call-recorded":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call recorded","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when an inbound\/outbound call has been successfully recorded.","operationId":"NotifyCallRecorded","requestBody":{"content":{"application\/json":{"examples":{"NormalCallRecorded":{"$ref":"#\/components\/examples\/normal-call-recorded"},"C2CCallRecorded":{"$ref":"#\/components\/examples\/c2c-call-recorded"}},"schema":{"$ref":"#\/components\/schemas\/call-recorded-event"}}}}}}},"call-blind-transfer":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call blind transfer","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a user transfer a call to another user\/department\/ring group via blind transfer (default) option.","operationId":"NotifyCallBlindTransfer","requestBody":{"content":{"application\/json":{"examples":{"C2CCallBlindTransfer":{"$ref":"#\/components\/examples\/c2c-blind-transfer"},"NormalCallBlindTransfer":{"$ref":"#\/components\/examples\/normal-call-blind-transfer"}},"schema":{"$ref":"#\/components\/schemas\/call-blind-transfer-event"}}}}}}},"call-rg-queue-tier":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call rg queue tier","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a call waiting in a ring group with call queue enabled enters a tier which results in calls being sent to a user in that tier.","operationId":"NotifyCallRgQueueTier","requestBody":{"content":{"application\/json":{"examples":{"NormalCallRgQueueTier":{"$ref":"#\/components\/examples\/normal-call-rg-queue-tier"},"C2CCallRgQueueTier":{"$ref":"#\/components\/examples\/c2c-call-rg-queue-tier"}},"schema":{"$ref":"#\/components\/schemas\/call-rg-queue-tier-event"}}}}}}},"voicemail-received":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify voicemail received","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when an incoming call is not answered by a user who has enabled voice mail recording, and the caller successfully records a voice mail.","operationId":"NotifyVoicemailReceived","requestBody":{"content":{"application\/json":{"examples":{"NormalVoicemailReceived":{"$ref":"#\/components\/examples\/normal-voicemail-received"},"C2CVoiceMailReceived":{"$ref":"#\/components\/examples\/c2c-voicemail-received"}},"schema":{"$ref":"#\/components\/schemas\/voicemail-received-event"}}}}}}},"message-sent":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify message sent","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a Team Member sends an SMS, MMS or WhatsApp message to an external phone number.","operationId":"NotifyMessageSent","requestBody":{"content":{"application\/json":{"examples":{"SmsFromDepartment":{"$ref":"#\/components\/examples\/sms-from-department"},"WhatsAppTextFromUser":{"$ref":"#\/components\/examples\/whatsapp-message-from-user"},"WhatsAppMediaFromUser":{"$ref":"#\/components\/examples\/whatsapp-media-from-user"},"MmsFromUser":{"$ref":"#\/components\/examples\/mms-from-user"},"WhatsAppTextTemplateFromUser":{"$ref":"#\/components\/examples\/whatsapp-text-template-from-user"}},"schema":{"$ref":"#\/components\/schemas\/message-sent-event"}}}}}}},"voicemail-notify":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify voicemail notify","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a user reaches the voice mail service (by dialing *95) to listen\/manage their unread voice mails.","operationId":"NotifyVoicemailNotify","requestBody":{"content":{"application\/json":{"examples":{"VoicemailNotify":{"$ref":"#\/components\/examples\/voicemail-notify"}},"schema":{"$ref":"#\/components\/schemas\/voicemail-notify-event"}}}}}}},"call-consultative-transfer":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call consultative transfer","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a user transfers a call via consultative transfer (also referred as warm transfer).","operationId":"NotifyCallConsultativeTransfer","requestBody":{"content":{"application\/json":{"examples":{"NormalCallConsultativeTransfer":{"$ref":"#\/components\/examples\/normal-call-consultative-transfer"},"C2CCallConsultativeTransfer":{"$ref":"#\/components\/examples\/c2c-call-consultative-transfer"}},"schema":{"$ref":"#\/components\/schemas\/call-consultative-transfer-event"}}}}}}},"call-park":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call park","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a user parks a call in a parking slot by pressing `#2` from the dial-pad while he is on a call.","operationId":"NotifyCallPark","requestBody":{"content":{"application\/json":{"examples":{"NormalCallPark":{"$ref":"#\/components\/examples\/normal-call-park"},"C2CCallPark":{"$ref":"#\/components\/examples\/c2c-call-park"}},"schema":{"$ref":"#\/components\/schemas\/call-park-event"}}}}}}},"ai-agent-conversation-summary-finished":{"{$request.body#\/endpoint_url}":{"post":{"description":"This event is triggered once per conversation when the AI-generated summary task reaches an end state (`completed`, `failed`, or `skipped`), typically seconds after the conversation ends and independently of the call recording. `summary` is `null` when the status is `failed` or `skipped`. No ordering is guaranteed relative to `ai_agent_conversation_ended`: normally this event lands first, but both may fire within seconds of each other, and after a force-published `ai_agent_conversation_ended` a late summary still fires this event afterwards. Only users with the `virtualagent.*` permission can subscribe to this event.","responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"operationId":"NotifyAiAgentConversationSummaryFinished","summary":"Notify ai agent conversation summary finished","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"requestBody":{"content":{"application\/json":{"examples":{"AiAgentConversationSummaryFinished":{"$ref":"#\/components\/examples\/ai-agent-conversation-summary-finished"},"AiAgentConversationSummaryFailed":{"$ref":"#\/components\/examples\/ai-agent-conversation-summary-failed"}},"schema":{"$ref":"#\/components\/schemas\/ai-agent-conversation-summary-finished-event"}}}}}}},"call-blocked":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call blocked","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when you receive a call from a blocked (either at user level or account level) number.","operationId":"NotifyCallBlocked","requestBody":{"content":{"application\/json":{"examples":{"CallBlockedUserLevel":{"$ref":"#\/components\/examples\/call-blocked-user-level"},"CallBlockedAccountLevel":{"$ref":"#\/components\/examples\/call-blocked-account-level"}},"schema":{"$ref":"#\/components\/schemas\/call-blocked-event"}}}}}}},"call-resume":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call resume","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a user (caller or callee) resumes the call from `hold` state.","operationId":"NotifyCallResume","requestBody":{"content":{"application\/json":{"examples":{"NormalCallResume":{"$ref":"#\/components\/examples\/normal-call-resume"},"C2CCallResume":{"$ref":"#\/components\/examples\/c2c-call-resume"}},"schema":{"$ref":"#\/components\/schemas\/call-resume-event"}}}}}}},"emergency-call":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify emergency call","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a call is placed to an emergency service.","operationId":"NotifyEmergencyCall","requestBody":{"content":{"application\/json":{"examples":{"EmergencyCall":{"$ref":"#\/components\/examples\/emergency-call"}},"schema":{"$ref":"#\/components\/schemas\/emergency-call-event"}}}}}}},"call-busy":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call busy","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"The event is triggered when an outbound call receives a 4xx or 5xx error response to the INVITE indicating the call failed for some reason.","operationId":"NotifyCallBusy","requestBody":{"content":{"application\/json":{"examples":{"C2CCallBusy":{"$ref":"#\/components\/examples\/c2c-call-busy"},"NormalCallBusy":{"$ref":"#\/components\/examples\/normal-call-busy"}},"schema":{"$ref":"#\/components\/schemas\/call-busy-event"}}}}}}},"call-forward":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call forward","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when an incoming call is forwarded to the number specified in the call forwarding options of a user.","operationId":"NotifyCallForward","requestBody":{"content":{"application\/json":{"examples":{"NormalCallForward":{"$ref":"#\/components\/examples\/normal-call-forward"},"C2CCallForward":{"$ref":"#\/components\/examples\/c2c-call-forward"}},"schema":{"$ref":"#\/components\/schemas\/call-forward-event"}}}}}}},"call-pickup":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call pickup","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a user uses `pickup` feature (by dialing *97{other-user-extension}) to answer call ringing on another user extension.","operationId":"NotifyCallPickup","requestBody":{"content":{"application\/json":{"examples":{"NormalCallPickup":{"$ref":"#\/components\/examples\/normal-call-pickup"},"C2CCallPickup":{"$ref":"#\/components\/examples\/c2c-call-pickup"}},"schema":{"$ref":"#\/components\/schemas\/call-pickup-event"}}}}}}},"call-rg-queue-completed":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call rg queue completed","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a call in a ring group completes by either being answered in a tier or the caller hangs up.","operationId":"NotifyCallRgQueueCompleted","requestBody":{"content":{"application\/json":{"examples":{"NormalCallRgQueueCompleted":{"$ref":"#\/components\/examples\/normal-call-rg-queue-completed"},"C2CCallRgQueueCompleted":{"$ref":"#\/components\/examples\/c2c-call-rg-queue-completed"}},"schema":{"$ref":"#\/components\/schemas\/call-rg-queue-completed-event"}}}}}}},"click-to-call-result":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify click to call result","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when the click-to-call flow is completed, both for successful and failure cases. \nPlease note that the `call_completed` event is also triggered for all click-to-call flows. One event can \nbe expected per one click-to-call call. Direction field is always inbound.","operationId":"NotifyClickToCallResult","requestBody":{"content":{"application\/json":{"examples":{"ClickToCallResult":{"$ref":"#\/components\/examples\/click-to-call-result"}},"schema":{"$ref":"#\/components\/schemas\/click-to-call-result-event"}}}}}}},"call-unpark":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call unpark","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a user retrieves a call from a parking slot.","operationId":"NotifyCallUnpark","requestBody":{"content":{"application\/json":{"examples":{"NormalCallUnpark":{"$ref":"#\/components\/examples\/normal-call-unpark"},"C2CCallUnpark":{"$ref":"#\/components\/examples\/c2c-call-unpark"}},"schema":{"$ref":"#\/components\/schemas\/call-unpark-event"}}}}}}},"voicemail-missed":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify voicemail missed","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when an incoming call is sent to a user's voicemail but the caller doesn't leave a voicemail. A common scenario for this would be the case where the callers hangs up before leaving a voicemail (before the beep sound).","operationId":"NotifyVoicemailMissed","requestBody":{"content":{"application\/json":{"examples":{"NormalVoicemailMissed":{"$ref":"#\/components\/examples\/normal-voicemail-missed"},"C2CVoicemailMissed":{"$ref":"#\/components\/examples\/c2c-voicemail-missed"}},"schema":{"$ref":"#\/components\/schemas\/voicemail-missed-event"}}}}}}},"ai-agent-conversation-ended":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify ai agent conversation ended","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when an AI Agent conversation has ended. Only users with the `virtualagent.*` permission can subscribe to this event. No ordering is guaranteed relative to `ai_agent_conversation_summary_finished`.","operationId":"NotifyAiAgentConversationEnded","requestBody":{"content":{"application\/json":{"examples":{"AiAgentConversationEnded":{"$ref":"#\/components\/examples\/ai-agent-conversation-ended"}},"schema":{"$ref":"#\/components\/schemas\/ai-agent-conversation-ended-event"}}}}}}},"call-answered":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call answered","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a user answers an incoming call or when an outgoing call is answered by the dialed number.","operationId":"NotifyCallAnswered","requestBody":{"content":{"application\/json":{"examples":{"C2CCallAnswered":{"$ref":"#\/components\/examples\/c2c-call-answered"},"NormalCallAnswered":{"$ref":"#\/components\/examples\/normal-call-answered"}},"schema":{"$ref":"#\/components\/schemas\/call-answered-event"}}}}}}},"call-hold":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call hold","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a user (caller or callee) puts the call on hold.","operationId":"NotifyCallHold","requestBody":{"content":{"application\/json":{"examples":{"NormalCallHold":{"$ref":"#\/components\/examples\/normal-call-hold"},"C2CCallHold":{"$ref":"#\/components\/examples\/c2c-call-hold"}},"schema":{"$ref":"#\/components\/schemas\/call-hold-event"}}}}}}},"message-received":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify message received","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a Team Member, Department or Account receives an SMS, MMS or WhatsApp message from an external phone number.","operationId":"NotifyMessageReceived","requestBody":{"content":{"application\/json":{"examples":{"WhatsAppMediaToUser":{"$ref":"#\/components\/examples\/whatsapp-media-to-user"},"MmsToUser":{"$ref":"#\/components\/examples\/mms-to-user"},"SmsToDepartment":{"$ref":"#\/components\/examples\/sms-to-department"},"WhatsAppTextToUser":{"$ref":"#\/components\/examples\/whatsapp-to-user"}},"schema":{"$ref":"#\/components\/schemas\/message-received-event"}}}}}}},"call-ringing":{"{$request.body#\/endpoint_url}":{"post":{"summary":"Notify call ringing","parameters":[{"$ref":"#\/components\/parameters\/webhook-signature"},{"$ref":"#\/components\/parameters\/webhook-timestamp"}],"x-n2p-accountBackendTypes":["unite","unite3"],"responses":{"default":{"description":"The response of the webhook endpoint is discarded, webhook requests are never retried."}},"description":"This event is triggered when a call is ringing. This event will trigger for both inbound and outbound calls and is typically followed by by a `call_answered` or `call_missed` event.","operationId":"NotifyCallRinging","requestBody":{"content":{"application\/json":{"examples":{"NormalCallRinging":{"$ref":"#\/components\/examples\/normal-call-ringing"},"C2CCallRinging":{"$ref":"#\/components\/examples\/c2c-call-ringing"}},"schema":{"$ref":"#\/components\/schemas\/call-ringing-event"}}}}}}}}}}