ExoVoIPManuale sviluppatori

Riferimento completo

Il riferimento interattivo con tutti gli endpoint, i parametri, gli schemi di richiesta e risposta e gli esempi è nello Swagger dell'API. Il documento OpenAPI 3.1 è disponibile in openapi.json: puoi importarlo in Postman, Insomnia o in un generatore di client.

Per provare gli endpoint dallo Swagger premi Authorize e inserisci la chiave API.

Tutti gli endpoint

Elenco generato dal documento OpenAPI, raggruppato per area, con lo scope richiesto e il metodo corrispondente negli SDK.

Stato servizio

DescrizioneRichiestaScopeMetodo SDK
Stato del servizioGET /health—health()

Accesso

DescrizioneRichiestaScopeMetodo SDK
Utente della sessioneGET /auth/me—auth.me()

Aziende

DescrizioneRichiestaScopeMetodo SDK
Elenco aziendeGET /v1/tenantstenants:readtenants.list()
Crea azienda (+ primo amministratore)POST /v1/tenantstenants:writetenants.create()
Azienda correnteGET /v1/tenants/currentextensions:readtenants.current()
Dettaglio aziendaGET /v1/tenants/:idtenants:readtenants.get()
Modifica aziendaPATCH /v1/tenants/:idtenants:writetenants.update()
Disattiva azienda (status=disabled, nessuna cancellazione dati)DELETE /v1/tenants/:idtenants:writetenants.delete()
Limiti interni e chiamate simultaneePUT /v1/tenants/:id/limitstenants:writetenants.limits()
Sospendi aziendaPOST /v1/tenants/:id/suspendtenants:writetenants.suspend()
Riattiva aziendaPOST /v1/tenants/:id/resumetenants:writetenants.resume()
Avvia impersonificazione (audit) e restituisce X-Tenant-IdPOST /v1/tenants/:id/impersonatetenants:impersonatetenants.impersonate()
Server voce e host SIP dell’aziendaGET /v1/tenants/:id/voice-nodetenants:readtenants.getVoiceNode() · py: tenants.get_voice_node()
Assegna server voce e host SIP dei telefoniPUT /v1/tenants/:id/voice-nodetenants:writetenants.setVoiceNode() · py: tenants.set_voice_node()

featureCodes

DescrizioneRichiestaScopeMetodo SDK
Impostazioni codici funzione (PIN forzatura orari)GET /v1/feature-codes/settingsextensions:readfeatureCodes.getSettings() · py: feature_codes.get_settings()
Imposta il PIN per la forzatura orari (*90 / *91 / *92)PUT /v1/feature-codes/settingsextensions:writefeatureCodes.setSettings() · py: feature_codes.set_settings()

Interni

DescrizioneRichiestaScopeMetodo SDK
Elenco interniGET /v1/extensionsextensions:readextensions.list()
Crea interno (password SIP mostrata una volta)POST /v1/extensionsextensions:writeextensions.create()
Dettaglio internoGET /v1/extensions/:idextensions:readextensions.get()
Modifica internoPATCH /v1/extensions/:idextensions:writeextensions.update()
Elimina interno (e relativi endpoint SIP)DELETE /v1/extensions/:idextensions:writeextensions.delete()
Deviazione su cellularePUT /v1/extensions/:id/follow-meextensions:writeextensions.followMe() · py: extensions.follow_me()
Stato non disturbareGET /v1/extensions/:id/dndextensions:readextensions.getDnd() · py: extensions.get_dnd()
Attiva / disattiva non disturbare (comportamento chiamate, scadenza)PUT /v1/extensions/:id/dndextensions:writeextensions.setDnd() · py: extensions.set_dnd()
Orari e stato acceso / spento dell’internoGET /v1/extensions/:id/availabilityextensions:readextensions.getAvailability() · py: extensions.get_availability()
Imposta gli orari dell’interno o lo accende / spegne (come *95 / *94)PUT /v1/extensions/:id/availabilityextensions:writeextensions.setAvailability() · py: extensions.set_availability()
Rigenera password SIPPOST /v1/extensions/:id/passwordextensions:writeextensions.resetPassword() · py: extensions.reset_password()
Credenziali SIP/WebRTC (telefono e softphone)GET /v1/extensions/:id/sip-credentialsextensions:writeextensions.sipCredentials() · py: extensions.sip_credentials()

Linee

DescrizioneRichiestaScopeMetodo SDK
Linee in attesa di verifica (sovrapposizione di reti)GET /v1/trunks/approvalssecurity:readtrunks.approvals()
Approva linea in attesa di verificaPOST /v1/trunks/:id/approvesecurity:writetrunks.approve()
Rifiuta linea in attesa di verifica (motivo obbligatorio)POST /v1/trunks/:id/rejectsecurity:writetrunks.reject()
Elenco lineeGET /v1/trunkstrunks:readtrunks.list()
Crea linea (condivisa solo superadmin)POST /v1/trunkstrunks:writetrunks.create()
Dettaglio lineaGET /v1/trunks/:idtrunks:readtrunks.get()
Modifica lineaPATCH /v1/trunks/:idtrunks:writetrunks.update()
Elimina linea (IN_USE se usata)DELETE /v1/trunks/:idtrunks:writetrunks.delete()

Numeri

DescrizioneRichiestaScopeMetodo SDK
Elenco numeriGET /v1/numbersnumbers:readnumbers.list()
Aggiunge numero al poolPOST /v1/numbersnumbers:writenumbers.create()
Aggiunta massiva numeriPOST /v1/numbers/bulknumbers:writenumbers.bulkCreate() · py: numbers.bulk_create()
Dettaglio numeroGET /v1/numbers/:idnumbers:readnumbers.get()
Destinazione e descrizione del numeroPATCH /v1/numbers/:idnumbers:writenumbers.update()
Rimuove numero dal pool (solo se libero)DELETE /v1/numbers/:idnumbers:writenumbers.delete()
Assegna/libera numero e lineaPUT /v1/numbers/:id/assignmentnumbers:writenumbers.assign()
Calendario e destinazione di chiusura del numeroGET /v1/numbers/:id/calendarnumbers:readnumbers.getCalendar() · py: numbers.get_calendar()
Assegna calendario e destinazione di chiusura al numeroPUT /v1/numbers/:id/calendarnumbers:writenumbers.setCalendar() · py: numbers.set_calendar()

Regole in entrata

DescrizioneRichiestaScopeMetodo SDK
Elenco regole in entrataGET /v1/inbound-routesinbound_routes:readinboundRoutes.list() · py: inbound_routes.list()
Crea regola in entrataPOST /v1/inbound-routesinbound_routes:writeinboundRoutes.create() · py: inbound_routes.create()
Riordina prioritàPUT /v1/inbound-routes/orderinbound_routes:writeinboundRoutes.reorder() · py: inbound_routes.reorder()
Dettaglio regolaGET /v1/inbound-routes/:idinbound_routes:readinboundRoutes.get() · py: inbound_routes.get()
Modifica regola (steps sostituisce la catena)PATCH /v1/inbound-routes/:idinbound_routes:writeinboundRoutes.update() · py: inbound_routes.update()
Elimina regolaDELETE /v1/inbound-routes/:idinbound_routes:writeinboundRoutes.delete() · py: inbound_routes.delete()

Regole di uscita

DescrizioneRichiestaScopeMetodo SDK
Elenco regole di uscitaGET /v1/outbound-routesoutbound_routes:readoutboundRoutes.list() · py: outbound_routes.list()
Crea regola di uscitaPOST /v1/outbound-routesoutbound_routes:writeoutboundRoutes.create() · py: outbound_routes.create()
Riordina prioritàPUT /v1/outbound-routes/orderoutbound_routes:writeoutboundRoutes.reorder() · py: outbound_routes.reorder()
Blocchi chiamate per categoriaGET /v1/outbound-routes/policyoutbound_routes:readoutboundRoutes.getPolicy() · py: outbound_routes.get_policy()
Imposta blocchi per categoria e destinazioni di inoltroPUT /v1/outbound-routes/policyoutbound_routes:writeoutboundRoutes.setPolicy() · py: outbound_routes.set_policy()
Simula instradamento di un numeroPOST /v1/outbound-routes/simulateoutbound_routes:readoutboundRoutes.simulate() · py: outbound_routes.simulate()
Dettaglio regolaGET /v1/outbound-routes/:idoutbound_routes:readoutboundRoutes.get() · py: outbound_routes.get()
Modifica regolaPATCH /v1/outbound-routes/:idoutbound_routes:writeoutboundRoutes.update() · py: outbound_routes.update()
Elimina regolaDELETE /v1/outbound-routes/:idoutbound_routes:writeoutboundRoutes.delete() · py: outbound_routes.delete()

Segreteria

DescrizioneRichiestaScopeMetodo SDK
Impostazioni segreteria aziendaGET /v1/voicemail/settingsvoicemail:readvoicemail.getSettings() · py: voicemail.get_settings()
Modifica impostazioni segreteriaPUT /v1/voicemail/settingsvoicemail:writevoicemail.setSettings() · py: voicemail.set_settings()
Caselle segreteriaGET /v1/voicemail/boxesvoicemail:readvoicemail.listBoxes() · py: voicemail.list_boxes()
Casella di un internoGET /v1/voicemail/boxes/:extensionIdvoicemail:readvoicemail.getBox() · py: voicemail.get_box()
Modifica casellaPUT /v1/voicemail/boxes/:extensionIdvoicemail:writevoicemail.updateBox() · py: voicemail.update_box()
Messaggi in segreteriaGET /v1/voicemail/boxes/:extensionId/messagesvoicemail:readvoicemail.listMessages() · py: voicemail.list_messages()
Ascolto messaggio (audio/wav o audio/mpeg)GET /v1/voicemail/boxes/:extensionId/messages/:messageId/audiovoicemail:readvoicemail.messageAudio() · py: voicemail.message_audio()
Sposta messaggio (letto/archiviato)PATCH /v1/voicemail/boxes/:extensionId/messages/:messageIdvoicemail:writevoicemail.updateMessage() · py: voicemail.update_message()
Elimina messaggioDELETE /v1/voicemail/boxes/:extensionId/messages/:messageIdvoicemail:writevoicemail.deleteMessage() · py: voicemail.delete_message()
Nome in rubrica, stato trascrizione ed emailGET /v1/voicemail/boxes/:extensionId/messages/:messageId/metavoicemail:readvoicemail.messageMeta() · py: voicemail.message_meta()
Trascrizione del messaggioGET /v1/voicemail/boxes/:extensionId/messages/:messageId/transcriptvoicemail:readvoicemail.messageTranscript() · py: voicemail.message_transcript()
Richiede la trascrizione del messaggioPOST /v1/voicemail/boxes/:extensionId/messages/:messageId/transcribevoicemail:writevoicemail.transcribeMessage() · py: voicemail.transcribe_message()
Reinvia l’email con audio e trascrizionePOST /v1/voicemail/boxes/:extensionId/messages/:messageId/emailvoicemail:writevoicemail.resendEmail() · py: voicemail.resend_email()

Registro chiamate

DescrizioneRichiestaScopeMetodo SDK
Registro chiamate (una voce per chiamata)GET /v1/cdrcdr:readcdr.list()
Esporta CSVGET /v1/cdr/export.csvcdr:readcdr.export()
Chiamata completa (tutte le tratte)GET /v1/cdr/:linkedidcdr:readcdr.get()

Chiavi API

DescrizioneRichiestaScopeMetodo SDK
Elenco chiavi APIGET /v1/api-keysapi_keys:readapiKeys.list() · py: api_keys.list()
Crea chiave (segreto mostrato una volta)POST /v1/api-keysapi_keys:writeapiKeys.create() · py: api_keys.create()
Dettaglio chiaveGET /v1/api-keys/:idapi_keys:readapiKeys.get() · py: api_keys.get()
Modifica nome, scope, IP, scadenzaPATCH /v1/api-keys/:idapi_keys:writeapiKeys.update() · py: api_keys.update()
Rotazione con periodo di sovrapposizionePOST /v1/api-keys/:id/rotateapi_keys:writeapiKeys.rotate() · py: api_keys.rotate()
Revoca immediataPOST /v1/api-keys/:id/revokeapi_keys:writeapiKeys.revoke() · py: api_keys.revoke()
Log di utilizzoGET /v1/api-keys/:id/usageapi_keys:readapiKeys.usage() · py: api_keys.usage()
Consumi giornalieri (30 giorni)GET /v1/api-keys/:id/usage/statsapi_keys:readapiKeys.usageStats() · py: api_keys.usage_stats()

Sicurezza

DescrizioneRichiestaScopeMetodo SDK
Riepilogo tentativi bloccati sugli interni dell’aziendaGET /v1/security/summaryextensions:readsecurity.summary()
Stato fail2ban/nftables/GeoIP e contatoriGET /v1/security/statussecurity:readsecurity.status()
IP bannatiGET /v1/security/banssecurity:readsecurity.bans()
Ban manuale IP/subnetPOST /v1/security/banssecurity:writesecurity.ban()
Sblocca IPPOST /v1/security/bans/unbansecurity:writesecurity.unban()
Parametri jailGET /v1/security/jailssecurity:readsecurity.jails()
Modifica jailPUT /v1/security/jails/:namesecurity:writesecurity.updateJail() · py: security.update_jail()
Paesi consentiti per servizioGET /v1/security/geosecurity:readsecurity.geo()
Modifica paesi consentitiPUT /v1/security/geo/:servicesecurity:writesecurity.updateGeo() · py: security.update_geo()
WhitelistGET /v1/security/whitelistsecurity:readsecurity.whitelist()
Aggiunge eccezione (IP/rete o paese, anche temporanea)POST /v1/security/whitelistsecurity:writesecurity.addWhitelist() · py: security.add_whitelist()
Rimuove eccezioneDELETE /v1/security/whitelist/:idsecurity:writesecurity.deleteWhitelist() · py: security.delete_whitelist()
Rate limit SIP, User-Agent bloccati, alertGET /v1/security/settingssecurity:readsecurity.getSettings() · py: security.get_settings()
Modifica impostazioni sicurezzaPUT /v1/security/settingssecurity:writesecurity.setSettings() · py: security.set_settings()
Log sicurezza filtrabiliGET /v1/security/logssecurity:readsecurity.logs()

Sistema

DescrizioneRichiestaScopeMetodo SDK
Stato servizi, Asterisk, host, reloadGET /v1/system/statussystem:readsystem.status()
Accoda reload configurazionePOST /v1/system/reloadsystem:writesystem.reload()
Storico reloadGET /v1/system/reload-jobssystem:readsystem.reloadJobs() · py: system.reload_jobs()
Dettaglio reloadGET /v1/system/reload-jobs/:idsystem:readsystem.reloadJob() · py: system.reload_job()

Tempo reale

DescrizioneRichiestaScopeMetodo SDK
Fotografia completa in tempo reale (chiamate, interni, linee, code, parcheggio, stato servizio)GET /v1/live/snapshotlive:readlive.snapshot()
Chiamate in corsoGET /v1/live/channelslive:readlive.channels()
Stato interni (registrazione, disponibilità, dispositivi)GET /v1/live/extensionslive:readlive.extensions()
Dispositivi registrati (IP, porta, trasporto, latenza, raggiungibilità)GET /v1/live/deviceslive:readlive.devices()
Stato linee (registrazione, raggiungibilità, chiamate attive)GET /v1/live/trunkslive:readlive.trunks()
Code: chiamanti in attesa e stato operatoriGET /v1/live/queueslive:readlive.queues()
Stato del servizio (dettaglio tecnico solo piattaforma)GET /v1/live/healthlive:readlive.health()
Eventi in tempo reale (SSE), filtrabili con ?types=GET /v1/live/eventslive:readlive.stream()
Eventi in tempo reale (WebSocket), filtrabili con ?types=GET /v1/live/wslive:readlive.websocket() (TS)

Webhook

DescrizioneRichiestaScopeMetodo SDK
Tipi di evento sottoscrivibiliGET /v1/webhooks/event-typeswebhooks:readwebhooks.eventTypes() · py: webhooks.event_types()
Elenco webhook (piattaforma senza X-Tenant-Id)GET /v1/webhookswebhooks:readwebhooks.list()
Crea webhook (segreto di firma mostrato una sola volta)POST /v1/webhookswebhooks:writewebhooks.create()
Dettaglio webhookGET /v1/webhooks/:idwebhooks:readwebhooks.get()
Modifica webhookPATCH /v1/webhooks/:idwebhooks:writewebhooks.update()
Elimina webhook e storico inviiDELETE /v1/webhooks/:idwebhooks:writewebhooks.delete()
Nuovo segreto di firma (mostrato una sola volta)POST /v1/webhooks/:id/rotate-secretwebhooks:writewebhooks.rotateSecret() · py: webhooks.rotate_secret()
Invio di prova (evento webhook.test)POST /v1/webhooks/:id/testwebhooks:writewebhooks.test()
Registro invii (esito, codice risposta, tentativi)GET /v1/webhooks/:id/deliverieswebhooks:readwebhooks.deliveries()
Nuovo invio di un evento già registratoPOST /v1/webhooks/:id/deliveries/:deliveryId/retrywebhooks:writewebhooks.redeliver()

Orari e chiusure

DescrizioneRichiestaScopeMetodo SDK
Elenco calendari con stato correnteGET /v1/calendarscalendars:readcalendars.list()
Crea calendario (festività nazionali precaricate)POST /v1/calendarscalendars:writecalendars.create()
Anteprima festività di un anno e patroni disponibiliGET /v1/calendars/holidayscalendars:readcalendars.holidays()
Dettaglio calendarioGET /v1/calendars/:idcalendars:readcalendars.get()
Modifica calendarioPATCH /v1/calendars/:idcalendars:writecalendars.update()
Elimina calendario (IN_USE se assegnato)DELETE /v1/calendars/:idcalendars:writecalendars.delete()
Sostituisce le fasce settimanaliPUT /v1/calendars/:id/hourscalendars:writecalendars.setHours() · py: calendars.set_hours()
Stato attuale e prossima transizioneGET /v1/calendars/:id/statuscalendars:readcalendars.status()
Forza aperto/chiuso con scadenzaPOST /v1/calendars/:id/forcecalendars:writecalendars.force()
Ripristina orari automaticiDELETE /v1/calendars/:id/forcecalendars:writecalendars.clearForce() · py: calendars.clear_force()
Storico forzatureGET /v1/calendars/:id/overridescalendars:readcalendars.overrides()
Simulatore: cosa succede il giorno X all’ora YPOST /v1/calendars/:id/simulatecalendars:readcalendars.simulate()
Carica festività nazionali e patronoPOST /v1/calendars/:id/holidayscalendars:writecalendars.preloadHolidays() · py: calendars.preload_holidays()
Eccezioni (chiusure e aperture straordinarie)GET /v1/calendars/:id/exceptionscalendars:readcalendars.listExceptions() · py: calendars.list_exceptions()
Crea eccezionePOST /v1/calendars/:id/exceptionscalendars:writecalendars.createException() · py: calendars.create_exception()
Modifica eccezionePATCH /v1/calendars/:id/exceptions/:exceptionIdcalendars:writecalendars.updateException() · py: calendars.update_exception()
Elimina eccezioneDELETE /v1/calendars/:id/exceptions/:exceptionIdcalendars:writecalendars.deleteException() · py: calendars.delete_exception()
Importa eventi iCal (file o indirizzo)POST /v1/calendars/:id/ical/importcalendars:writecalendars.importIcal() · py: calendars.import_ical()
Esporta in formato iCalGET /v1/calendars/:id/ical/export.icscalendars:readcalendars.exportIcal() · py: calendars.export_ical()
Sincronizza ora dall’indirizzo iCal configuratoPOST /v1/calendars/:id/ical/synccalendars:writecalendars.syncIcal() · py: calendars.sync_ical()

Registrazioni

DescrizioneRichiestaScopeMetodo SDK
Registrazioni (filtri e ricerca nelle trascrizioni)GET /v1/recordingsrecordings:readrecordings.list()
Conservazione, formato e permessi di ascoltoGET /v1/recordings/settingsrecordings:readrecordings.getSettings() · py: recordings.get_settings()
Modifica impostazioni registrazioniPUT /v1/recordings/settingsrecordings:writerecordings.setSettings() · py: recordings.set_settings()
Regole di registrazione per livelloGET /v1/recordings/policiesrecordings:readrecordings.listPolicies() · py: recordings.list_policies()
Regola effettiva per interno / numero / codaGET /v1/recordings/policies/effectiverecordings:readrecordings.effectivePolicy() · py: recordings.effective_policy()
Imposta la regola di un livello (targetId 0 = azienda)PUT /v1/recordings/policies/:scope/:targetIdrecordings:writerecordings.upsertPolicy() · py: recordings.upsert_policy()
Rimuove la regola (torna a ereditare)DELETE /v1/recordings/policies/:scope/:targetIdrecordings:writerecordings.deletePolicy() · py: recordings.delete_policy()
Registro ascolti, download e cancellazioniGET /v1/recordings/access-logrecordings:writerecordings.accessLog() · py: recordings.access_log()
Dettaglio registrazioneGET /v1/recordings/:idrecordings:readrecordings.get()
Elimina registrazione (audit)DELETE /v1/recordings/:idrecordings:writerecordings.delete()
Ascolto / download (registrato nel registro ascolti)GET /v1/recordings/:id/audiorecordings:readrecordings.audio()
Trascrizione e riassuntoGET /v1/recordings/:id/transcriptrecordings:readrecordings.transcript()
Richiede la trascrizionePOST /v1/recordings/:id/transcriberecordings:writerecordings.transcribe()
Richiede il riassuntoPOST /v1/recordings/:id/summarizerecordings:writerecordings.summarize()

Inoltro al cellulare

DescrizioneRichiestaScopeMetodo SDK
Modalità di inoltro al cellulareGET /v1/extensions/:id/invisible-forwardingextensions:readforwarding.get()
Imposta conferma / silenziosa / sussurroPUT /v1/extensions/:id/invisible-forwardingextensions:writeforwarding.update()
Deviazione presso il provider (solo Exobyte)GET /v1/extensions/:id/provider-diverttenants:writeforwarding.getProviderDivert() · py: forwarding.get_provider_divert()
Imposta deviazione presso il provider (solo Exobyte)PUT /v1/extensions/:id/provider-diverttenants:writeforwarding.setProviderDivert() · py: forwarding.set_provider_divert()

Notifiche

DescrizioneRichiestaScopeMetodo SDK
Regole di notifica (superadmin senza azienda: piattaforma)GET /v1/notifications/settingsnotifications:readnotifications.getSettings() · py: notifications.get_settings()
Modifica regole di notificaPUT /v1/notifications/settingsnotifications:writenotifications.setSettings() · py: notifications.set_settings()
Registro notifiche inviateGET /v1/notifications/lognotifications:readnotifications.log()
Invio di provaPOST /v1/notifications/testnotifications:writenotifications.test()

Lavori in corso

DescrizioneRichiestaScopeMetodo SDK
Stato di un lavoro in backgroundGET /v1/jobs/:idmedia:readjobs.get()
DescrizioneRichiestaScopeMetodo SDK
Menu vocaliGET /v1/ivrsivrs:readivrs.list()
Crea menu vocalePOST /v1/ivrsivrs:writeivrs.create()
Dettaglio menu vocaleGET /v1/ivrs/:idivrs:readivrs.get()
Modifica menu vocale (options sostituisce)PATCH /v1/ivrs/:idivrs:writeivrs.update()
Elimina menu vocale (IN_USE se usato)DELETE /v1/ivrs/:idivrs:writeivrs.delete()
Testo del messaggio suggerito dalle opzioniPOST /v1/ivrs/:id/greeting-textivrs:readivrs.greetingText() · py: ivrs.greeting_text()

Gruppi di squillo

DescrizioneRichiestaScopeMetodo SDK
Gruppi di squilloGET /v1/ring-groupsring_groups:readringGroups.list() · py: ring_groups.list()
Crea gruppo di squilloPOST /v1/ring-groupsring_groups:writeringGroups.create() · py: ring_groups.create()
Dettaglio gruppoGET /v1/ring-groups/:idring_groups:readringGroups.get() · py: ring_groups.get()
Modifica gruppoPATCH /v1/ring-groups/:idring_groups:writeringGroups.update() · py: ring_groups.update()
Elimina gruppo (IN_USE se usato)DELETE /v1/ring-groups/:idring_groups:writeringGroups.delete() · py: ring_groups.delete()

Code

DescrizioneRichiestaScopeMetodo SDK
CodeGET /v1/queuesqueues:readqueues.list()
Crea codaPOST /v1/queuesqueues:writequeues.create()
Dettaglio codaGET /v1/queues/:idqueues:readqueues.get()
Modifica coda (members sostituisce)PATCH /v1/queues/:idqueues:writequeues.update()
Elimina coda (IN_USE se usata)DELETE /v1/queues/:idqueues:writequeues.delete()
Chiamanti in attesa e stato operatoriGET /v1/queues/:id/livelive:readqueues.live()
Pausa / ripresa operatorePUT /v1/queues/:id/members/:extensionId/pausequeues:writequeues.pauseMember() · py: queues.pause_member()
Richiamate richieste dai chiamantiGET /v1/queues/:id/callbacksqueues:readqueues.callbacks()

Musica d’attesa

DescrizioneRichiestaScopeMetodo SDK
Classi musica d’attesa (azienda + Exobyte)GET /v1/mohmedia:readmoh.list()
Crea classe musica d’attesaPOST /v1/mohmedia:writemoh.create()
Dettaglio classeGET /v1/moh/:idmedia:readmoh.get()
Modifica classe (tracce e annunci)PATCH /v1/moh/:idmedia:writemoh.update()
Elimina classe (IN_USE se usata)DELETE /v1/moh/:idmedia:writemoh.delete()

Messaggi vocali

DescrizioneRichiestaScopeMetodo SDK
Messaggi vocali e tracceGET /v1/promptsmedia:readprompts.list()
Crea messaggio da testo (voce AI o provvisorio)POST /v1/promptsmedia:writeprompts.createTts() · py: prompts.create_tts()
Carica audio (normalizzato e convertito)POST /v1/prompts/uploadmedia:writeprompts.upload()
Dettaglio messaggioGET /v1/prompts/:idmedia:readprompts.get()
Modifica testo / voce (rigenera)PATCH /v1/prompts/:idmedia:writeprompts.update()
Elimina messaggio (IN_USE se usato)DELETE /v1/prompts/:idmedia:writeprompts.delete()
Rigenera l’audioPOST /v1/prompts/:id/generatemedia:writeprompts.generate()
Anteprima audioGET /v1/prompts/:id/audiomedia:readprompts.audio()

Rubrica

DescrizioneRichiestaScopeMetodo SDK
Rubrica aziendale e personaleGET /v1/contactscontacts:readcontacts.list()
Crea contattoPOST /v1/contactscontacts:writecontacts.create()
Ricerca per numero (nome sul display)GET /v1/contacts/lookupcontacts:readcontacts.lookup()
Importa CSV / vCardPOST /v1/contacts/importcontacts:writecontacts.import()
Esporta CSV / vCardGET /v1/contacts/exportcontacts:readcontacts.export()
Impostazioni ricerca nome e blacklistGET /v1/contacts/settingscontacts:readcontacts.getSettings() · py: contacts.get_settings()
Modifica impostazioni rubricaPUT /v1/contacts/settingscontacts:writecontacts.setSettings() · py: contacts.set_settings()
Dettaglio contattoGET /v1/contacts/:idcontacts:readcontacts.get()
Modifica contatto (numbers sostituisce)PATCH /v1/contacts/:idcontacts:writecontacts.update()
Elimina contattoDELETE /v1/contacts/:idcontacts:writecontacts.delete()

Operatività

DescrizioneRichiestaScopeMetodo SDK
Stato backup, firewall, lavori in background e servizi esterniGET /v1/ops/statussystem:readops.status()

voiceNodes

DescrizioneRichiestaScopeMetodo SDK
Server voce collegati e statoGET /v1/voice-nodessystem:readvoiceNodes.list() · py: voice_nodes.list()
Aggiunge un server voce (codice di attivazione mostrato una volta)POST /v1/voice-nodessystem:writevoiceNodes.create() · py: voice_nodes.create()
Dettaglio server voceGET /v1/voice-nodes/:idsystem:readvoiceNodes.get() · py: voice_nodes.get()
Modifica nome, host SIP, notePATCH /v1/voice-nodes/:idsystem:writevoiceNodes.update() · py: voice_nodes.update()
Elimina server voce (solo senza aziende assegnate)DELETE /v1/voice-nodes/:idsystem:writevoiceNodes.delete() · py: voice_nodes.delete()
Nuovo codice di attivazione (installazione o reinstallazione)POST /v1/voice-nodes/:id/enrollment-codesystem:writevoiceNodes.enrollmentCode() · py: voice_nodes.enrollment_code()
Disattiva il server voce e ne revoca le credenzialiPOST /v1/voice-nodes/:id/revokesystem:writevoiceNodes.revoke() · py: voice_nodes.revoke()

voices

DescrizioneRichiestaScopeMetodo SDK
Voci disponibili (la predefinita per prima)GET /v1/voicesmedia:readvoices.list()
Aggiorna subito il catalogo delle vociPOST /v1/voices/syncsystem:writevoices.sync()
Voce predefinita dell’azienda (null = quella della piattaforma)PUT /v1/voices/defaultmedia:writevoices.setTenantDefault() · py: voices.set_tenant_default()
Voce predefinita della piattaformaPUT /v1/voices/platform-defaultsystem:writevoices.setPlatformDefault() · py: voices.set_platform_default()
Ascolto di esempio della voce (mp3)GET /v1/voices/:voiceId/previewmedia:readvoices.preview()
Ascolta la voce con un testo a scelta (max 200 caratteri, prove giornaliere limitate)POST /v1/voices/:voiceId/samplemedia:writevoices.sample()