Skip to main content

Envio de SMS

Para envio de SMS a partir do Witime, utilize os seguintes parâmetros.

EndPointhttps://sms.witi.me/sms/send.aspx?chave=CHAVE_API
Método POST
Entrada JSON com um conjunto de mensagens a serem enviados
Retorno JSON com resultado do agendamento do envio

info

A chave de API encontra-se no menu SMS > Configurações SMS.

Novo

Aceitamos requisições nos principais formatos Zenvia, Movile, Twilio, entre outros. Veja mais em Formatos de Entrada.

Exemplo CURL

curl --location 'https://sms.witi.me/sms/send.aspx?chave=CHAVE_API&tipo=short&to=%2B5511987654321&msg=teste%2Bmensagem'
Nota

Substitua a variável CHAVE_API antes de fazer a chamada CURL.

Nota

Para fazer o teste de outra(s) rota(s), adicione o parâmetro &rota=X na chamada CURL. Para visualizar as rotas ativas, acesse o menu Configuração SMS > Rota Preferencial.

Envio de SMS assíncrono

O envio assíncrono permite que o envio de mensagens seja mais rápido, basta adicionar o argumento async=true ao endpoint:

EndPointhttps://sms.witi.me/sms/send.aspx?chave=CHAVE_API&async=true

Dica

Guarde a Chave retornada pela API, para porteriormente consultar a situação do lote assíncrono.

Entrada

Classe Raíz

PropriedadeConteúdo
tipo_enviocommon | token | debug
Padrão: common
referenciaNome de um envio para referencia, não obrigatório.
rotaRota utilizada para envio do SMS. Se não informado, utiliza rota padrão.
mensagensarray de Mensagens

Classe Mensagens

PropriedadeConteúdo
numeroContém o número destino da mensagem a ser enviada, no formado DDD + Número
mensagemTexto da mensagem
DataAgendamentoData e hora que a mensagem deverá ser entregue.
Codigo_clienteCódigo personalizado de livre preenchimento.
templateCódigo do template a ser enviado no lugar do campo 'mensagem'.
TemplateWEBIDWebId do template a ser enviado no lugar do campo 'mensagem'.

Exemplo de Entrada:

{
"tipo_envio": "common",
"referencia": "envio de api",
"rota": 99,
"mensagens": [
{
"numero": "11999999999",
"mensagem": "mensagem de teste 1",
"DataAgendamento": "2020-07-26 14:30:00",
"Codigo_cliente": "0000001"
},
{
"numero": "11999999998",
"mensagem": "mensagem de teste 2",
"DataAgendamento": "2020-07-26 14:30:00",
"Codigo_cliente": "0000002"
}
]
}

Exemplo de Entrada (template):

{
"tipo_envio": "common",
"referencia": "envio de api",
"rota": 99,
"mensagens": [
{
"template": 123,
"numero": "11999999999"
},
{
"TemplateWEBID": "4095a269-5d88-4bbb-9ff4-db33404d4f52",
"numero": "11999999998"
},
]
}

Saída

O retorno será um JSON com as seguintes características.

Classe Raíz

PropriedadeConteúdo
CodigoResultado0 (zero) Se estiver tudo certo
outro valor caso tenha algum erro
MensagemDescrição da situação
ChaveChave única de identificação deste lote de envio.
Cobradotrue or false
ValorCobradoValor cobrado pelo disparo

Classe Mensagens

PropriedadeConteúdo
numeroContém o número destino da mensagem a ser enviada, no formado DDD + Número
MensagemTexto da mensagem
UniqueIDNúmero único de identificação desta mesagem individual.
DataAgendamentoData e hora que a mensagem deverá ser entregue.
CustoCusto individual da mensagem
IdDisparoCaso tenha sido fornecido uma valor de "referencia", conterá o número único de referência do disparo.
SituacaoCódigo de acordo com a situação da mensagem:

0 Aguardando
1 ProntoParaEnvio
2 EnviadaAPI
3 Bloqueado
8 BloqueadoHLR
9 ErroEnvio
10 ConfirmacaoEntregue
11 Respondido
99 OutrosErros
MensagemSituacaoMensagem descritiva da situação da mensagem
Codigo_clienteCódigo informado pelo cliente.
RotaIndica a rota de saída da mensagem

Exemplo de Saída:

{
"Resultado": {
"CodigoResultado": 0,
"Mensagem": "Mensagens enviadas com sucesso",
"Chave": "154d1f4d-2856-4913-80f8-084b20f3e9de",
"Cobrado": true,
"ValorCobrado": 0.20
},
"Mensagens": [
{
"numero": "+5511987654321",
"mensagem": "mensagem de teste 1",
"UniqueID": "31b2c48f-2ea9-4979-a9dd-cbfb927de18f",
"DataAgendamento": "2020-07-26 14:35:08",
"Custo": 0.1000,
"idDisparo": 25,
"Situacao": 1,
"MensagemSituacao": null,
"Codigo_cliente": "0000001",
"Rota": 99
},
{
"numero": "+5511987654321",
"mensagem": "mensagem de teste 2",
"UniqueID": "f795a269-5d88-4bbb-9ff4-db33404d4f52",
"DataAgendamento": "2020-07-26 14:35:08",
"Custo": 0.1000,
"idDisparo": 26,
"Situacao": 1,
"MensagemSituacao": null,
"Codigo_cliente": "0000002",
"Rota": 99
}
],
"Saldo": 5310.94
}

Status de um SMS

Consulta lote assíncrono

Retorna a situação (status) do lote assíncrono.

EndPointhttps://sms.witi.me/sms/consultalote.aspx?chave=CHAVE_API&lote=CHAVE_LOTE
Método GET
Retorno JSON com o status da(s) mensagem(ns)

Consulta simples

Retorna a situação (status) atual da mensagem conforme o ID informado.

EndPoint https://sms.witi.me/sms/getstatus.aspx?chave=CHAVE_API&messageid=MESSAGE_ID
EndPoint SMPPhttps://sms.witi.me/sms/getstatus.aspx?chave=CHAVE_API&messageid=MESSAGE_ID&tipo=smpp
Método GET
Retorno JSON com o status da mensagem

Consulta em lote

Retorna a situação (status) de acordo com a lista de mensagens informada.

EndPoint https://sms.witi.me/sms/getstatus.aspx?chave=CHAVE_API
EndPoint SMPPhttps://sms.witi.me/sms/getstatus.aspx?chave=CHAVE_API&tipo=smpp
Método POST
Entrada Lista JSON com os IDs das mensagens
Retorno JSON com o status da(s) mensagem(ns)

Exemplo de entrada:

[
"c6f5fd19-124a-4035-983a-471e3c448183",
"2185b568-537c-4702-bc38-a29009aa91c7",
"f586866a-d16a-43c7-98ee-7b86421251d5"
]

Exemplo de entrada SMPP:

[
"2145172767744231",
"3019283749203872",
"6018023984723650"
]

Exemplo de retorno:

{
"Resultado": {
"CodigoResultado": 0,
"Mensagem": "Dados retornados com sucesso, 3 registros",
"Chave": "225f93c6-9a11-49ab-ad52-064cf509cae0",
"Cobrado": false,
"ValorCobrado": 0.0
},
"Mensagens": [
{
"IdEmpresa": 14274,
"IdCallback": 437526,
"Tipo": "DLR",
"IdMensagem": "c6f5fd19-124a-4035-983a-471e3c448183",
"Situacao": 10,
"IdRota": 0,
"IdDisparo": 9258,
"CodOper": 0,
"Mensagem": "Informando o token 488861 vc confirma que leu e está de acordo...",
"Tag": null,
"Cliente_ref": "15||209||0",
"DataSituacao": "2021-11-11T16:01:56.86",
"DataDespacho": "2021-11-11T15:59:05.097",
"DataEntregue": "2021-11-11T16:01:56.923",
"DataResposta": "0001-01-01T00:00:00",
"Remote_Dlr_time": "2021-11-11T16:01:56.86",
"Remote_status": "4-DELIVERE",
"Callback_data_execucao": "2021-11-11T16:02:00",
"Callback_post_content": "[{\"Data\":\"2021-11-11T16:01:56.923\",\"Tipo\":\"DLR\",\"MensagemUniqueId\":\"c6f5fd19-124a-4035-983a-471e3c448183\",\"Situacao\":10,\"SituacaoDescricao\":\"Entregue\",\"Mensagem\":null,\"Cliente_ref\":\"15||209||0\"}]",
"Callback_return_content": "",
"Callback_url": "http://meu-site.com/messages?id=1",
"Callback_return_code": 200,
"Callback_tempo_ms": 437
},
{
"IdEmpresa": 1,
"IdCallback": 0,
"Tipo": "DLR",
"IdMensagem": "2185b568-537c-4702-bc38-a29009aa91c7",
"Situacao": 10,
"IdRota": 0,
"IdDisparo": 0,
"CodOper": 55320,
"Mensagem": "Marcelo, obrigado por falar com nossos atendentes. ",
"Tag": null,
"Cliente_ref": "",
"DataSituacao": "2021-11-11T16:01:56.86",
"DataDespacho": "2021-11-11T15:59:18.24",
"DataEntregue": "2021-11-11T16:01:56.923",
"DataResposta": "0001-01-01T00:00:00",
"Remote_Dlr_time": "2021-11-11T16:01:56.86",
"Remote_status": "4-DELIVERE",
"Callback_data_execucao": "0001-01-01T00:00:00",
"Callback_post_content": "",
"Callback_return_content": "",
"Callback_url": "",
"Callback_return_code": 0,
"Callback_tempo_ms": 0
},
{
"IdEmpresa": 1,
"IdCallback": 0,
"Tipo": "DLR",
"IdMensagem": "f586866a-d16a-43c7-98ee-7b86421251d5",
"Situacao": 10,
"IdRota": 0,
"IdDisparo": 0,
"CodOper": 55320,
"Mensagem": "Jeferson, obrigado por falar com nossos atendentes.",
"Tag": null,
"Cliente_ref": "",
"DataSituacao": "2021-11-11T16:01:56.86",
"DataDespacho": "2021-11-11T15:59:10.783",
"DataEntregue": "2021-11-11T16:01:56.923",
"DataResposta": "0001-01-01T00:00:00",
"Remote_Dlr_time": "2021-11-11T16:01:56.86",
"Remote_status": "4-DELIVERE",
"Callback_data_execucao": "0001-01-01T00:00:00",
"Callback_post_content": "",
"Callback_return_content": "",
"Callback_url": "",
"Callback_return_code": 0,
"Callback_tempo_ms": 0
}
],
"Saldo": 5310.94
}

Cancelar disparo SMS

EndPointhttps://sms.witi.me/sms/cancel.aspx?chave=CHAVE_API
Método POST
Entrada JSON com a lista de IDs das mensagens a serem canceladas
Retorno JSON com resultado do agendamento do envio

Atenção

O cancelamento poderá ser feito em até 5 minutos antes do disparo.

Entrada

[
"f586866a-d16a-43c7-98ee-7b86421251d5",
"c6f5fd19-124a-4035-983a-471e3c448183",
...
// máximo de 250 mensagens por requisição
]

Saída

{
"Resultado": {
"CodigoResultado": 0,
"Mensagem": "Mensagens canceladas com sucesso, 2 registros",
"Chave": "325f93a6-9a12-49ab-ad52-064cf509cee0",
"Cobrado": false,
"ValorCobrado": 0.0
},
"Mensagens": [
...
]
}