Detalhes técnicos da Messages API

A Messages API permite enviar e, em alguns casos, receber mensagens por SMS, MMS, RCS, Facebook Messenger, Viber, WhatsApp e e-mail. Outros canais poderão ser suportados no futuro.

Observação: As principais operadoras dos EUA anunciaram seus requisitos para um novo padrão de mensagens de aplicativo para pessoa (A2P) nos EUA, que se aplica a todas as mensagens enviadas por meio de números de telefone geográficos de 10 dígitos, também conhecidos como 10 DLC. Se você já envia ou planeja enviar mensagens SMS/MMS a partir de um código longo de 10 dígitos com código de país +1 para redes nos EUA, será necessário registrar uma marca e uma campanha para obter aprovação para o envio de mensagens. Consulte o 10 Documentação do DLC para mais detalhes.

O diagrama a seguir ilustra como a Messages API do Vonage permite que você envie mensagens para o caso de uso de sua escolha por meio de vários canais a partir de um único ponto de extremidade; por exemplo, você poderia enviar mensagens de notificação pelo WhatsApp e por SMS:

Messages Overview

Recursos compatíveis

Canal Texto de saída Imagem de saída Áudio de saída Vídeo de saída Arquivo de saída Modelo de saída
SMS n/a n/a n/a n/a n/a
MMS n/a
RCS n/a n/a
WhatsApp
Facebook Messenger
Mensagens comerciais do Viber n/a
E-mail n/a
Canal Texto recebido Imagem recebida Áudio de entrada Vídeo de entrada Arquivo de entrada Local de entrada
SMS n/a n/a n/a n/a n/a
MMS n/a
RCS
WhatsApp
Facebook Messenger
Mensagens comerciais do Viber n/a n/a
E-mail n/a n/a n/a n/a n/a

Também é oferecido suporte limitado para objetos personalizados:

Canal Botão “Sair” Local de saída Contato de saída
SMS n/a n/a n/a
MMS n/a n/a n/a
RCS n/a
WhatsApp
Facebook Messenger n/a n/a
Mensagens comerciais do Viber n/a n/a
E-mail n/a n/a n/a

Legenda:

  • = Compatível.
  • = Compatível com o canal, mas não com a Vonage.
  • n/a = Não é compatível com o canal.

Notas:

  1. Para a RCS, o custom Esse tipo está obsoleto. As mensagens “Button” e “Location” são suportadas como Fichas de sugestão em text, card, e carousel digitar mensagens

Autenticação

A Messages API oferece suporte a ou Autenticação básica ou Autenticação JWT (JSON Web Token), mas há algumas diferenças importantes entre as duas que devem ser levadas em conta:

  • A autenticação básica utiliza um Chave e segredo da API, e realiza a autenticação no Account nível.
  • A autenticação JWT utiliza um JSON Web Token gerados por meio de uma chave privada e um ID de aplicativo. Os JWTs oferecem recursos avançados, como ACLs, e realizam a autenticação no aplicativo nível, o que significa que você pode acessar as configurações do seu aplicativo Vonage, como, por exemplo, o aplicativo webhooks e Mídia de entrada segura.

Recomendamos que você use Autenticação JWT em produção para a maioria dos casos de uso. A autenticação básica pode ser suficiente ao testar a API, como ao usar o Messages Sandbox, ou para alguns casos de uso básicos.

Se você estiver usando nosso SDKs de servidor Para interagir com a Messages API, elas podem criar JWTs automaticamente para você.

Limites de taxa

O limite de taxa padrão para solicitações à Messages API é de 75 solicitações por segundo por chave de API. Esse limite pode ser aumentado caso a caso. Entre em contato com seu gerente de conta ou representante de vendas para discutir o aumento do seu limite de taxa.

Observação: esse limite se aplica às solicitações à própria API. Diferentes canais e redes podem ter limites distintos. Ultrapassar o limite de solicitações à API resultará em um 429 Resposta HTTP à solicitação da API. No caso de limites de canal ou de rede, as solicitações podem ser aceitas (e receber uma 202 (resposta HTTP) caso não excedam o limite da API, mas possam ser rejeitadas posteriormente no nível do provedor. Essa rejeição será comunicada por meio de um Webhook de status de mensagem com o status de rejected.

API de Contas Externas

O API de Contas Externas é usado para gerenciar seus Accounts do Viber Business Messages, do Facebook Messenger e do WhatsApp ao utilizar esses canais com as APIs do Messages e da Dispatch API.

Introdução

Neste exemplo, você precisará substituir as seguintes variáveis por valores reais, utilizando qualquer método que lhe for mais conveniente:

Chave Descrição
VONAGE_API_KEY Chave da API da Vonage, que pode ser obtida em sua Painel da API da Vonage.
VONAGE_API_SECRET Chave secreta da API da Vonage, que pode ser obtida em sua Painel da API da Vonage.
FROM_NUMBER Um número de telefone de sua propriedade ou algum texto para identificar o remetente.
TO_NUMBER O número de telefone para o qual a mensagem será enviada.

NOTA: Não use um espaço à esquerda + ou 00 Ao digitar um número de telefone, comece com o código do país, por exemplo, 447700900000.

O código a seguir mostra como enviar uma mensagem SMS usando a Messages API:

Escreva o código

Adicione o seguinte ao arquivo ` send-sms-basic-auth.sh`:

curl -X POST https://api.nexmo.com/v1/messages \
	-u "${VONAGE_API_KEY}:${VONAGE_API_SECRET}" \
	-H 'Content-Type: application/json' \
	-H 'Accept: application/json' \
	-d $'{
		"to": "'${MESSAGES_TO_NUMBER}'",
		"from": "'${SMS_SENDER_ID}'",
		"channel": "sms",
		"message_type": "text",
		"text": "This is an SMS sent using the Vonage Messages API."
	}'

Ver código-fonte completo

Execute seu código

Salve este arquivo no seu computador e execute-o:

bash send-sms-basic-auth.sh

Pré-requisitos

npm install @vonage/server-sdk @vonage/messages

Crie um arquivo chamado ` send-sms-basic-auth.js ` e insira o seguinte código:

const { Vonage } = require('@vonage/server-sdk');
const { Channels } = require('@vonage/messages');

/**
 * By leaving out the applicationId and privateKey parameters, the Vonage
 * SDK will use basic authentication to authenticate with the Messages API.
 *
 * @link https://developer.vonage.com/en/messages/technical-details#authentication
 */
const vonage = new Vonage(
  {
    apiKey: VONAGE_API_KEY,
    apiSecret: VONAGE_API_SECRET,
  },
  {
    ...(MESSAGES_API_URL ? {apiHost: MESSAGES_API_URL} : {}),
  },
);

Ver código-fonte completo

Escreva o código

Adicione o seguinte ao arquivo ` send-sms-basic-auth.js`:

vonage.messages.send({
  messageType: 'sms',
  channel: Channels.SMS,
  text: 'This is an SMS text message sent using the Messages API',
  to: MESSAGES_TO_NUMBER,
  from: SMS_SENDER_ID,
})
  .then(({ messageUUID }) => console.log(messageUUID))
  .catch((error) => console.error(error));

Ver código-fonte completo

Execute seu código

Salve este arquivo no seu computador e execute-o:

node send-sms-basic-auth.js

Referência