BroadNet
Per agenti AI·/developers/ai-agents

Messaggistica e voce per agenti AI.

Offri a un agente AI un modo sicuro per consultare copertura, regole e prezzi, e per inviare SMS, messaggi WhatsApp e codici monouso dal tuo account BroadNet. Usa l'interfaccia più adatta al tuo stack: due server MCP, l'API REST, l'SDK TypeScript o semplici file leggibili dalle macchine.

Scegli il metodo di accesso

Di solito un agente ha bisogno di due cose: dati per pianificare e un modo per agire. BroadNet le tiene separate. Il server di conoscenza risponde alle domande senza account; l'invio richiede sempre il tuo token.

Server di conoscenza MCP

Risposte pubbliche in sola lettura basate sugli stessi dati di questo sito: copertura, regole per l'ID mittente, listini indicativi, normative, conteggio dei segmenti, risposte, casi studio, changelog e stato del servizio.

https://www.broadnet.me/mcp
Autenticazione:
Nessuno
Accesso:
Sola lettura · 13 strumenti, 60 richieste al minuto per IP
Ideale per:
Domande di pianificazione, ricerca e pre-vendita, prima della creazione di un account.
Server di messaggistica MCP

L'API di messaggistica BroadNet esposta come strumenti MCP. L'agente invia e traccia i messaggi con i permessi del token che gli fornisci.

https://mcp.broadnet.me/mcp
Autenticazione:
Bearer <token>
Accesso:
Agisce sul tuo account
Ideale per:
Assistenti e agenti che inviano messaggi su richiesta dell'utente, con conferma umana per ogni invio.
API REST

API REST con token Bearer, una famiglia di percorsi per canale, descritta da una specifica OpenAPI 3.1. Il tuo agente decide; il tuo codice esegue la chiamata.

https://api.broadnet.me
Autenticazione:
Bearer <token>
Accesso:
Il tuo codice chiama l'API · OpenAPI 3.1
Ideale per:
Agenti in produzione in cui il tuo backend gestisce i nuovi tentativi, i log e i limiti.
TypeScript SDK

L'unico SDK ufficiale, @broadnet/cpaas-sdk, generato dalla specifica OpenAPI. Gli altri linguaggi chiamano l'API REST o generano un client.

npm i @broadnet/cpaas-sdk
Autenticazione:
Bearer <token>
Accesso:
Il tuo codice chiama l'API · TypeScript / Node.js
Ideale per:
Framework per agenti Node.js e definizioni di tool con tipi completi.

Cosa può inviare un agente

Le stesse regole si applicano a qualsiasi interfaccia utilizzata dall'agente: un ID mittente registrato, un destinatario consenziente e contenuti adatti al canale.

SMS

Un messaggio per richiesta, oppure un job massivo da un file. La fatturazione è per segmento, quindi i testi lunghi o non latini costano di più: contali prima.

API REST
POST /sms/sendSms (JSON) POST /sms/sendbulk (multipart)
MCP di messaggistica
Strumenti di invio SMS, ad esempio post_sms_send
WhatsApp

Messaggi a testo libero all'interno della finestra di servizio di 24 ore; al di fuori di essa, solo template approvati. I template sono elencati e inviati tramite nome.

API REST
POST /whatsapp/message/sendbulk (multipart)
MCP di messaggistica
post_whatsapp_message_sendget_whatsapp_template_listpost_whatsapp_template_send
OTP

Il tuo sistema genera il codice; l'agente lo invia in un SMS o in un template di autenticazione WhatsApp. L'API pubblica non ha un endpoint di verifica separato, quindi il controllo del codice resta nel tuo sistema.

API REST
POST /sms/sendSms con il codice nel messaggio
MCP di messaggistica
Gli stessi strumenti SMS e template WhatsApp
Voce

OTP vocale, chiamate text-to-speech e IVR vengono attivati tramite il tuo account team. La specifica OpenAPI pubblica e gli strumenti MCP coprono i canali di messaggistica, non le chiamate vocali. Per le chiamate in uscita con AI, vedi DialerBee.

API REST
Configurato per account
MCP di messaggistica
Nessuno strumento vocale

Un esempio pratico: un agente pianifica un lancio OTP

Un utente chiede a un agente di pianificare l'invio di codici monouso negli Emirati Arabi Uniti. L'agente chiama quattro strumenti sul server di conoscenza pubblico. I risultati qui sotto sono l'output reale del server, ridotto ai campi che l'agente utilizza.

Utente

Vogliamo inviare circa 50.000 codici di accesso al mese ai clienti negli Emirati Arabi Uniti. Di cosa abbiamo bisogno e quanto costerà?

  1. Chiamata toolcheck_coverageGli Emirati Arabi Uniti sono coperti? Con quali operatori?
    →{"country":"UAE"}
    Risultato (ridotto)
    {
      "country": "UAE",
      "regulator": "TDRA (Telecommunications and Digital Government Regulatory Authority)",
      "channels": { "sms": "Live", "otp": "Live", "whatsapp": "Live", "rcs": "Available", "voice": "Live" },
      "operators": [
        { "name": "Etisalat / e&", "status": "Direct" },
        { "name": "du", "status": "Direct" },
        { "name": "Virgin Mobile", "status": "Operator-grade" }
      ]
    }
  2. Chiamata toolsender_id_rulesCosa serve lì per un ID mittente?
    →{"country":"ae"}
    Risultato (ridotto)
    {
      "typicalLeadTime": "5-7 business days",
      "requirements": [
        {
          "format": "Alphanumeric (Latin or Arabic), up to 11 chars. AD- prefix mandatory on promotional senders.",
          "preRegistration": "Required — one sender ID per legal entity per use case"
        }
      ],
      "marketingRules": { "quietHours": "TDRA's spam policy bars marketing text messages between 21:00 and 07:00 GST. Transactional OTP and alerts are 24/7." }
    }
  3. Chiamata toolcount_sms_segmentsQuanti segmenti occupa il messaggio?
    →{"text":"Your MyShop code is 482913. It expires in 5 minutes. Never share it."}
    Risultato (ridotto)
    {
      "encoding": "GSM-7",
      "units": 68,
      "segments": 1
    }
  4. Chiamata toolestimate_priceQual è il prezzo indicativo?
    →{"country":"UAE","channel":"sms","volume":50000}
    Risultato (ridotto)
    {
      "country": "UAE",
      "unitPriceUsd": 0.0123,
      "unit": "per SMS segment",
      "estimatedMonthlyUsd": 615,
      "ratesReviewed": "2026-09-24",
      "note": "Indicative list rate, excluding taxes and sender-ID fees. Volume pricing available; a written quote confirms per-operator pricing."
    }
Agente

Gli Emirati Arabi Uniti sono coperti con connessione diretta agli operatori (Etisalat / e& · du). Il tuo ID mittente va pre-registrato presso la TDRA, di solito in 5–7 giorni lavorativi. Il messaggio con il codice occupa 1 segmento SMS. Alla tariffa di listino indicativa di 0,0123 USD per segmento, 50.000 codici costano circa 615 USD al mese, tasse e costi dell'ID mittente esclusi. Non è un preventivo.

Prossimo passo: richiedi l'accesso di prova su broadnet.me/signup. Quando avrai un token, potrò inviare un codice di prova al tuo numero verificato tramite il server di messaggistica. Vuoi che prepari il messaggio da confermare?

Generato a ogni deploy dall'output reale degli strumenti

Copia e incolla

Gli esempi usano solo numeri fittizi. Leggi il token da una variabile d'ambiente; non incollarlo mai in una chat o in un file salvato nel repository.

mcp.json — entrambi i server
{
  "mcpServers": {
    "broadnet-knowledge": {
      "type": "http",
      "url": "https://www.broadnet.me/mcp"
    },
    "broadnet": {
      "type": "http",
      "url": "https://mcp.broadnet.me/mcp",
      "headers": {
        "Authorization": "Bearer ${BROADNET_TOKEN}"
      }
    }
  }
}
tools/call estimate_price (server di conoscenza)
curl -X POST https://www.broadnet.me/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "MCP-Protocol-Version: 2025-06-18" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call",
       "params":{"name":"estimate_price",
                 "arguments":{"country":"UAE","channel":"sms","volume":50000}}}'
invia un SMS (API REST)
curl -X POST https://api.broadnet.me/sms/sendSms \
  -H "Authorization: Bearer $BROADNET_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "senderId": "BroadNet",
    "destinationNumber": "447700900123",
    "message": "Your verification code is 482913",
    "messageType": "TEXT"
  }'

# 200 OK → response body is the message ID, e.g. 2603121407537573731
HTTP 200 restituisce l'ID del messaggio. L'API non ha un header di idempotenza: dopo un errore di rete o un 5xx, controlla lo stato del messaggio tramite il suo ID prima di inviarlo di nuovo.
lo stesso invio con l'SDK TypeScript
// npm install @broadnet/cpaas-sdk axios
import { Configuration, SMSSMSApi } from "@broadnet/cpaas-sdk";

const sms = new SMSSMSApi(
  new Configuration({
    basePath: "https://api.broadnet.me",
    accessToken: process.env.BROADNET_TOKEN!,
  }),
);

const res = await sms.smsSendsmsPost({
  sMSSmsRequest: {
    senderId: "BroadNet",
    destinationNumber: "447700900123",
    message: "Your verification code is 482913",
    messageType: "TEXT",
  },
});

console.log(res.data); // message ID
invia un template WhatsApp approvato (API REST)
# Send an approved WhatsApp template
curl -X POST https://api.broadnet.me/whatsapp/message/sendbulk \
  -H "Authorization: Bearer $BROADNET_TOKEN" \
  -F batchId=0 \
  -F campaignName=order-updates \
  -F destinationNo=447700900123 \
  -F messageType=TEMPLATE \
  -F templateName=order_update \
  -F templateLanguage=en_US \
  -F bodyTemplateVariables=INV-400

# 200 OK → the response carries the batchId; per-recipient status
# (SUBMITTED → SENT → DELIVERED → READ) arrives on your webhook.
I template funzionano al di fuori della finestra di servizio di 24 ore; il testo libero richiede una finestra aperta.

Punti di ingresso leggibili dalle macchine

Gli agenti che navigano invece di connettersi possono leggere tutto da semplici file. Nessuno richiede un login.

Regole che un agente deve seguire

Un agente che invia messaggi agisce per il tuo brand con le tue credenziali. Integra queste regole nelle sue istruzioni e nei suoi strumenti.

  • Il consenso precede il contenuto

    Invia messaggi di marketing solo a chi ha dato il consenso (opt-in) e conserva la registrazione del consenso. Lo strumento sender_id_rules restituisce le regole di opt-in di ogni mercato.

  • Rispetta le disiscrizioni

    I messaggi promozionali riportano la parola chiave di disiscrizione del mercato, ad esempio STOP. Un agente non scrive mai a un numero che si è disiscritto.

  • Solo ID mittente registrati

    Molti mercati richiedono la pre-registrazione degli ID mittente alfanumerici. L'agente usa gli ID mittente approvati sul tuo account, mai uno inventato.

  • Rispetta le fasce di silenzio

    Diversi mercati vietano il marketing di notte. sender_id_rules restituisce le fasce di silenzio con la relativa fonte; OTP e avvisi sono di solito consentiti 24 ore su 24.

  • Proteggi i flussi OTP dal pumping

    I bot possono far partire invii di OTP verso numeri da cui i truffatori guadagnano. Limita le richieste di codice per numero, IP e dispositivo, e blocca le destinazioni che non servi. MyOTP ha queste protezioni attive per impostazione predefinita.

  • Una persona conferma ogni invio

    Fai chiedere conferma al client prima di qualsiasi strumento che invia, soprattutto verso molti destinatari, e abilita solo gli strumenti di cui l'agente ha bisogno.

  • Testa sul tuo numero

    Utilizzando le credenziali di prova, invia messaggi solo al tuo numero verificato. Gli esempi e i prompt utilizzano numeri fittizi.

  • Mantieni il token fuori dalla chat

    Il token è una credenziale di invio. Caricalo da una variabile d'ambiente, mai da un prompt, e revocalo se viene esposto.

Correlati

Domande frequenti

Un agente AI può inviare messaggi SMS e WhatsApp tramite BroadNet?

Sì. Collegalo al server di messaggistica MCP all'indirizzo https://mcp.broadnet.me/mcp con il tuo token BroadNet, oppure fai chiamare dal tuo codice l'API REST https://api.broadnet.me. In entrambi i casi l'agente agisce con i permessi del tuo token, quindi richiedi che una persona confermi ogni invio.

Un agente ha bisogno di un account per richiedere informazioni su copertura o prezzi?

No. Il server di conoscenza MCP presso https://www.broadnet.me/mcp è pubblico e in sola lettura. Restituisce informazioni su copertura, regole per l'ID mittente, listini indicativi e normative, utilizzando gli stessi dati del sito web. I prezzi sono tariffe di listino indicative e non preventivi.

Come invia un agente un codice monouso?

Il tuo sistema genera il codice e l'agente lo invia in un SMS con POST /sms/sendSms, oppure in un template di autenticazione WhatsApp. L'API pubblica non ha un endpoint di verifica separato, quindi il controllo del codice resta nel tuo sistema.

Un agente può effettuare chiamate vocali?

OTP vocale, chiamate text-to-speech e IVR vengono attivati tramite il tuo account team BroadNet. Non fanno parte della specifica OpenAPI pubblica né degli strumenti MCP. DialerBee è il dialer AI in uscita di BroadNet per i contact center.

Come posso ottenere un token?

Richiedi l'accesso di prova su /signup. BroadNet risponderà entro un giorno lavorativo con le credenziali di test. Non è disponibile una chiave self-service immediata.

Connetti il tuo agente a BroadNet

Inizia oggi stesso con il server di conoscenza pubblico. Richiedi l'accesso di prova quando il tuo agente sarà pronto per l'invio.