Gestire i team White Label con API e MCP

Invita i clienti, controlla l'accesso ai domini, sospendi o ripristina i membri e consulta l'attività White Label tramite API REST e strumenti MCP.

Dettagli dell'articolo

Tipo, difficoltà, piani e data dell'ultimo aggiornamento.

Tipo
Riferimento
Difficoltà
Intermedio
Piani
Pro · Agency · + White Label add-on
Ultimo aggiornamento
9 set 2026

Gli account White Label possono essere gestiti senza tornare alla dashboard. L'API REST e il server MCP coprono lo stato di configurazione dell'account, clienti e membri del team, ruoli, accesso ai domini, inviti, sospensioni, rimozioni, ripristini e cronologia delle attività. Il branding fa parte dello stesso set di strumenti White Label e dispone di una propria guida al branding.

Il limite importante è semplice: una connessione non può mai concedere più accesso di quello già posseduto dalla persona che la utilizza. Un responsabile limitato a determinati domini non può invitare qualcuno in domini non correlati e un ruolo personalizzato non può concedere autorizzazioni che il chiamante non possiede.

Funzionalità disponibili

Il catalogo MCP completo contiene ora 261 strumenti tramite stdio e fino a 260 strumenti tramite HTTP ospitato. White Label offre 20 strumenti: sette per il branding e 13 per la gestione di account, membri e attività.

Questi strumenti non vengono caricati per tutti. TrekMail valuta in tempo reale il diritto White Label dell'account, l'appartenenza attuale della persona, il token o la concessione OAuth, eventuali restrizioni di dominio, i set di strumenti selezionati e le impostazioni di sicurezza locali prima di creare tools/list. Una connessione senza accesso a White Label non riceve affatto gli schemi.

Stati del diritto

Stato Proprietario Membri delegati Scritture
Attivo Accesso completo consentito dagli ambiti Accesso consentito dagli ambiti e dall'appartenenza Disponibili
Periodo di tolleranza dopo l'annullamento Accesso di recupero in sola lettura Accesso a White Label rimosso Bloccate
Non disponibile Nessun accesso all'API o a MCP di White Label Nessun accesso all'API o a MCP di White Label Bloccate

Con accesso in lettura a White Label, chiama GET /api/v1/white-label o lo strumento get_white_label per distinguere active dalla modalità grace in sola lettura e per visualizzare l'avanzamento della configurazione e la scadenza del periodo di tolleranza. Un account non disponibile non può chiamare questo endpoint: quando una credenziale memorizzata include ancora un ambito White Label che l'account non può più utilizzare, l'API restituisce scope_blocked_by_entitlement e spiega dove riattivarlo.

Ambiti

Ambito Cosa consente
branding:read Leggere impostazioni del brand, risorse, host, record DNS e stato della configurazione
branding:write Modificare branding, risorse, anteprime, host e controlli DNS
members:read Leggere clienti, membri del team, ruoli, accesso ai domini e catalogo degli accessi
members:write Invitare persone e aggiornare, sospendere, riattivare, rimuovere o ripristinare l'accesso
activity:read Leggere l'attività dell'account White Label e gli accessi dei membri

L'endpoint delle attività di un membro richiede sia activity:read sia members:read, perché la risposta contiene un record del membro oltre all'attività. La connessione OAuth ospitata utilizza il selettore tools:white_label per richiedere questa famiglia di strumenti; gli ambiti REST effettivi restano comunque limitati dall'account e dall'appartenenza.

Per un server MCP in hosting autonomo, aggiungi white_label a TREKMAIL_TOOLSETS quando utilizzi un elenco consentito di set di strumenti. Gli strumenti di scrittura rispettano anche le protezioni di sicurezza locali descritte di seguito.

Endpoint REST

Tutti i percorsi si trovano sotto https://trekmail.net/api/v1.

Metodo Percorso Ambito Scopo
GET /white-label branding:read Leggere diritto, brand predefinito, avanzamento della configurazione e stato dei domini raggiungibili
GET /white-label/access-catalog members:read Leggere ruoli, gruppi di autorizzazioni, autorizzazioni concedibili e domini raggiungibili
GET /white-label/members members:read Elencare membri e inviti, con ricerca e filtri di stato
POST /white-label/members members:write Invitare un cliente o un collega
GET /white-label/members/{id} members:read Leggere un membro e le operazioni successive consentite
PATCH /white-label/members/{id} members:write Modificare ruolo, accesso ai domini, autorizzazioni personalizzate o nota
POST /white-label/members/{id}:suspend members:write Interrompere immediatamente l'accesso e revocare le chiavi del membro
POST /white-label/members/{id}:resume members:write Riattivare un'appartenenza sospesa
POST /white-label/members/{id}:resend-invitation members:write Sostituire un invito in sospeso e inviarne uno nuovo
DELETE /white-label/members/{id} members:write Rimuovere l'accesso e revocare le chiavi del membro
POST /white-label/members/{id}:restore members:write Ripristinare un'appartenenza rimossa senza riattivare le vecchie chiavi
GET /white-label/activity activity:read Leggere l'attività dell'account, con filtro facoltativo per azione o membro
GET /white-label/members/{id}/activity activity:read + members:read Leggere le azioni e gli accessi recenti di un membro

Ogni scrittura in questa tabella richiede un header Idempotency-Key. La ripetizione della stessa richiesta con la stessa chiave restituisce il risultato sicuro originale; i segreti monouso presenti in una ripetizione, come un token di invito, vengono oscurati. Il riutilizzo di una chiave con un corpo diverso restituisce idempotency_mismatch.

Leggere prima il catalogo degli accessi

Non inserire direttamente nel codice di un'integrazione le autorizzazioni dei ruoli. Chiama il catalogo degli accessi prima di un invito o di una modifica dell'accesso. I suoi indicatori grantable riflettono l'appartenenza attuale del chiamante e possono cambiare quando il proprietario modifica tale appartenenza.

I ruoli attualmente disponibili per i nuovi inviti sono:

  • client - gestisce i domini e le caselle di posta assegnati senza vedere il rapporto privato del rivenditore con TrekMail.
  • webmail_only - compare nell'elenco del team, ma non riceve autorizzazioni per la dashboard.
  • domain_admin - gestisce i domini assegnati e i relativi DNS, ma non le caselle di posta.
  • mailbox_operator - gestisce le caselle di posta nei domini assegnati, ma non i domini stessi.
  • read_only - può esaminare l'area consentita dell'account senza modificarla.
  • custom - riceve solo le autorizzazioni elencate in permissions.

Alcuni ruoli richiedono domain_ids espliciti; altri possono utilizzare all_domains. Il catalogo degli accessi indica quale regola si applica. Se il chiamante tenta di concedere un ruolo, un'autorizzazione o un insieme di domini più ampio, TrekMail restituisce scope_blocked_by_membership invece di restringere silenziosamente l'invito.

Invitare un cliente

curl -s -X POST "https://trekmail.net/api/v1/white-label/members" \
  -H "Authorization: Bearer tm_live_your_token" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: invite-northwind-admin-20260904" \
  -d '{
    "email": "admin@northwind.example",
    "role": "client",
    "all_domains": false,
    "domain_ids": [123, 124],
    "note": "Northwind primary contact"
  }'

La risposta include il membro, indica se la consegna dell'e-mail è riuscita e fornisce un URL di invito monouso. Un problema di consegna non elimina l'invito: il proprietario può copiare l'URL o inviarlo nuovamente in seguito.

Per un ruolo personalizzato, leggi grantable_permissions dal catalogo degli accessi e invia i valori selezionati in permissions. È richiesta almeno un'autorizzazione.

Seguire lo stato del membro

Ogni risposta relativa a un membro include allowed_operations. Usa questo elenco invece di fare supposizioni:

  • Un invito in sospeso può essere aggiornato, sospeso, inviato nuovamente o rimosso.
  • Un membro attivo può essere aggiornato, sospeso o rimosso.
  • Un membro sospeso può essere aggiornato, riattivato o rimosso.
  • Un membro rimosso può essere ripristinato.
  • La riga del proprietario è visibile come contesto, ma non può essere modificata tramite questi endpoint.

L'elenco viene inoltre filtrato per il chiamante corrente. È vuoto per una connessione in sola lettura, per l'appartenenza del chiamante stesso e per i membri le cui autorizzazioni sono più ampie di quelle che il chiamante può gestire.

I chiamanti non possono rimuovere o sospendere se stessi. I chiamanti delegati non possono inoltre gestire un membro il cui accesso sia più ampio del proprio. Le transizioni non valide restituiscono membership_state_conflict con un suggerimento per rileggere il membro.

La sospensione o la rimozione di una persona revoca le chiavi API e delle caselle di posta create nell'ambito di tale appartenenza. La riattivazione o il ripristino dell'appartenenza non recupera mai le vecchie chiavi; la persona deve riconnettersi o creare nuove credenziali.

Limiti di attività e privacy

GET /white-label/activity restituisce inviti, modifiche di ruolo e dominio, sospensioni, rimozioni, ripristini e azioni di sicurezza correlate. Filtra con action, member_id e per_page.

GET /white-label/members/{id}/activity combina le azioni del membro sull'account con gli accessi recenti, inclusi ora, indirizzo IP, posizione approssimativa, browser, sistema operativo e tipo di dispositivo. Questa route richiede deliberatamente entrambi gli ambiti di lettura. I chiamanti con restrizioni di dominio possono richiedere solo membri che rientrano completamente nel proprio limite di domini; un membro inaccessibile viene restituito come 404, in modo che l'endpoint non riveli l'esistenza di un altro tenant o cliente.

Strumenti MCP

Strumento Protezione Scopo
get_white_label Lettura Diritto, brand, avanzamento della configurazione e domini
get_white_label_access_catalog Lettura Ruoli, autorizzazioni e domini che il chiamante può concedere
list_white_label_members Lettura Cercare o filtrare clienti, membri e inviti
get_white_label_member Lettura Leggere un membro e le operazioni successive consentite
invite_white_label_member Invio Creare e inviare un invito tramite e-mail
update_white_label_member Distruttivo Modificare ruolo, domini, autorizzazioni o nota
suspend_white_label_member Distruttivo Interrompere l'accesso e revocare le chiavi attive
resume_white_label_member Distruttivo Riattivare un'appartenenza sospesa
resend_white_label_invitation Invio Sostituire e inviare tramite e-mail un invito in sospeso
remove_white_label_member Distruttivo + conferma Rimuovere l'accesso e revocare le chiavi attive
restore_white_label_member Distruttivo Ripristinare un'appartenenza rimossa
list_white_label_activity Lettura Leggere l'attività dell'account
get_white_label_member_activity Lettura Leggere le azioni e gli accessi di un membro

Gli strumenti di invito richiedono TREKMAIL_ALLOW_SENDING=true su MCP stdio in hosting autonomo. Gli strumenti che modificano l'accesso richiedono TREKMAIL_ALLOW_DESTRUCTIVE=true; la rimozione richiede anche confirm_remove=true. Queste opzioni sono controlli di sicurezza locali, non autorizzazioni API aggiuntive. MCP ospitato applica una propria politica di sicurezza approvata.

Gli strumenti creano chiavi di idempotenza deterministiche quando non ne fornisci una. Specificare un proprio idempotency_key è utile quando un flusso di lavoro potrebbe riavviarsi in un processo diverso.

Un flusso di automazione sicuro

  1. Chiama get_white_label. Fermati in caso di scope_blocked_by_entitlement; in una risposta grace riuscita, continua solo con operazioni di lettura.
  2. Chiama get_white_label_access_catalog immediatamente prima di concedere l'accesso.
  3. Elenca o leggi il membro di destinazione prima di modificarlo.
  4. Controlla allowed_operations, il ruolo previsto, le autorizzazioni e gli ID dei domini.
  5. Usa una chiave di idempotenza stabile per la scrittura.
  6. Leggi nuovamente il membro e comunica lo stato risultante e le autorizzazioni effettive.
  7. Controlla l'attività White Label quando è necessario un record di audit della modifica.

Errori che indicano cosa fare

Codice Significato Passaggio successivo
insufficient_scope Alla credenziale non è mai stato concesso l'ambito richiesto Aggiungi tale ambito o autorizza nuovamente la connessione OAuth
scope_blocked_by_entitlement La concessione memorizzata esiste, ma White Label non è attivo per essa al momento Riattiva White Label, quindi emetti o autorizza nuovamente la credenziale
scope_blocked_by_membership Il ruolo attuale della persona è più limitato rispetto all'azione o alla concessione richiesta Chiedi al proprietario di modificare l'appartenenza o richiedi un accesso inferiore
member_not_manageable La destinazione è il proprietario, il chiamante stesso o un membro con accesso più ampio Scegli un membro entro il limite di gestione del chiamante
membership_state_conflict L'operazione non è adatta allo stato corrente del membro Leggi allowed_operations e scegli una di queste azioni
missing_idempotency_key È stata inviata una scrittura senza chiave Riprova con un Idempotency-Key stabile
idempotency_mismatch La stessa chiave è stata riutilizzata per input diversi Usa l'input originale o crea una nuova chiave

Articoli correlati

Vai alle guide vicine che proseguono il flusso di lavoro.

Usiamo le tecnologie necessarie per gestire e proteggere TrekMail. Confermando consenti anche analisi limitate e misurazione pubblicitaria come descritto nella nostra Informativa sui cookie.

Accedi a TrekMail

Accedi alla tua dashboard, alle caselle di posta e al DNS.

oppure

12 caratteri le password coincidono

oppure

Email di reimpostazione inviata

Se esiste un account per questa email, abbiamo inviato le istruzioni per reimpostare la password.

Continuando, accetti i Termini e l' Informativa sulla privacy di TrekMail.