ExoVoIP Manuale sviluppatori

Utenti del pannello

Gli utenti sono le persone che accedono al pannello con email e password. Ogni utente ha un ruolo (vedi Autenticazione) e può essere collegato a un interno.

Con questi endpoint gli amministratori consultano gli utenti e ne cambiano nome ed email di accesso:

  • l'amministratore di un'azienda vede e modifica solo gli utenti della propria azienda, mai quelli di altre aziende né gli amministratori della piattaforma;
  • l'amministratore della piattaforma vede tutti gli utenti. Senza X-Tenant-Id può filtrare con ?tenantId=<id> oppure ?tenantId=platform (solo gli amministratori della piattaforma); con X-Tenant-Id vede solo gli utenti di quell'azienda.

Servono gli scope users:read (elenco e dettaglio) e users:write (modifica). Il ruolo Amministratore azienda li ha entrambi.

Elenco e ricerca

GET /v1/users restituisce gli utenti in ordine di creazione, con paginazione a cursore. Filtri: q (nome o email), role, tenantId (solo piattaforma). Ogni utente riporta azienda, interno collegato, stato, verifica in due passaggi e ultimo accesso.

curl https://centralino.exovoip.it/api/v1/users?q=rossi \
  -H 'Authorization: Bearer exo_live_…'

Modifica di nome ed email

PATCH /v1/users/:id con name e/o email. La modifica vale subito; quando cambia l'email, sia il vecchio sia il nuovo indirizzo ricevono un avviso e i link già inviati (recupero password, cambio email) smettono di funzionare. La password non cambia.

Regole:

  • per sicurezza la modifica è consentita solo dalla sessione del pannello: con una chiave API la risposta è 403 SESSION_REQUIRED;
  • un'email già usata da un altro account restituisce 409 EMAIL_TAKEN (le email sono uniche su tutta la piattaforma, senza distinzione tra maiuscole e minuscole);
  • la propria email non si cambia da qui (400): si usa POST /auth/email/change, che chiede la password attuale e la conferma dal nuovo indirizzo (vedi Autenticazione);
  • un utente di un'altra azienda risponde 404.

Nel pannello: Impostazioni → Utenti per l'amministratore dell'azienda, Amministrazione → Utenti per la piattaforma (anche dal menu di ogni azienda in Aziende clienti).

Ogni modifica è registrata nel registro attività (user.update) con il vecchio e il nuovo indirizzo.

Endpoint

DescrizioneRichiestaScopeMetodo SDK
Utenti del pannello (piattaforma senza X-Tenant-Id: tutti, filtro tenantId)GET /v1/usersusers:readusers.list()
Dettaglio utente del pannelloGET /v1/users/:idusers:readusers.get()