# Integrazione con l'API OTP

> Invia codici monouso via SMS (POST /sms/sendSms) o con i modelli di autenticazione WhatsApp (POST /whatsapp/message/sendbulk). Genera e verifica il codice nella tua applicazione e monitora la consegna tramite i webhook DLR.

- URL canonico: https://www.broadnet.me/it/developers/otp
- Lingua: it
- Ultimo aggiornamento: 2026-10-21
- Editore: BroadNet (https://www.broadnet.me)

Invia codici monouso utilizzando gli stessi endpoint che usi per qualsiasi messaggio. Genera il codice nel tuo backend, invialo con POST /sms/sendSms (o come modello di autenticazione WhatsApp con POST /whatsapp/message/sendbulk) e verifica cosa digita l'utente confrontandolo con il codice che hai memorizzato. Per la generazione e la convalida del codice come servizio gestito, consulta la pagina del prodotto OTP.

> **Mantieni il codice lato server** Memorizza un hash del codice con una scadenza breve, limita i tentativi per ogni numero e non restituire mai il codice nella risposta API al client.

## Esempi

### otp.ts

```typescript
import { randomInt } from "node:crypto";
import { Configuration, SMSSMSApi } from "@broadnet/cpaas-sdk";

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

// 1. Generate and store the code (hash it, with an expiry).
const code = String(randomInt(100000, 1000000));
await otpStore.save("447700900123", code, { ttlSeconds: 300 });

// 2. Send it as a normal SMS.
await sms.smsSendsmsPost({
  sMSSmsRequest: {
    senderId: "BroadNet",
    destinationNumber: "447700900123",
    message: `Your verification code is ${code}`,
    messageType: "TEXT",
  },
});

// 3. Later: compare the code the user typed with the stored one.
```

Il codice viene generato e verificato nella tua applicazione; BroadNet lo consegna.
