# Integração da API OTP

> Envie códigos de uso único por SMS (POST /sms/sendSms) ou com modelos de autenticação do WhatsApp (POST /whatsapp/message/sendbulk). Gere e verifique o código na sua própria aplicação e acompanhe a entrega pelos webhooks de DLR.

- URL canônico: https://www.broadnet.me/pt/developers/otp
- Idioma: pt
- Última atualização: 2026-10-21
- Editor: BroadNet (https://www.broadnet.me)

Envie códigos de acesso únicos (OTP) usando os mesmos endpoints que você utiliza para qualquer mensagem. Gere o código no seu backend, envie-o com POST /sms/sendSms (ou como um modelo de autenticação WhatsApp com POST /whatsapp/message/sendbulk) e verifique o que o utilizador digita em comparação com o código armazenado. Para geração e validação de código como um serviço gerido, consulte a página do produto OTP.

> **Mantenha o código no lado do servidor.** Armazene um hash do código com um curto prazo de validade, limite as tentativas por número e nunca devolva o código numa resposta API para o cliente.

## Exemplos

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

O código é gerado e verificado na sua aplicação; BroadNet o entrega.
