# OTP-API-Integration

> Senden Sie Einmalcodes per SMS (POST /sms/sendSms) oder über WhatsApp-Authentifizierungsvorlagen (POST /whatsapp/message/sendbulk). Generieren und prüfen Sie den Code in Ihrer eigenen Anwendung und verfolgen Sie die Zustellung über DLR-Webhooks.

- Kanonische URL: https://www.broadnet.me/de/developers/otp
- Sprache: de
- Zuletzt aktualisiert: 2026-10-21
- Herausgeber: BroadNet (https://www.broadnet.me)

Senden Sie Einmalpasswörter über dieselben Endpunkte, die Sie für alle Nachrichten verwenden. Generieren Sie den Code in Ihrem Backend, senden Sie ihn mit POST /sms/sendSms (oder als WhatsApp Authentifizierungsvorlage mit POST /whatsapp/message/sendbulk) und überprüfen Sie die Eingabe des Nutzers anhand des gespeicherten Codes. Informationen zur Codegenerierung und -validierung als verwalteter Dienst finden Sie auf der OTP Produktseite.

> **Den Code serverseitig halten** Speichern Sie einen Hash des Codes mit kurzer Gültigkeitsdauer, begrenzen Sie die Versuche pro Nummer und geben Sie den Code niemals in einer API Antwort an den Client zurück.

## Beispiele

### 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.
```

Der Code wird in Ihrer Anwendung generiert und geprüft; BroadNet liefert ihn.
